程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net web.config加密解密方法

asp.net web.config加密解密方法

編輯:ASP.NET基礎
使用命令行工具aspnet_regiis.exe
  你還能夠使用aspnet_regiis.exe命令行工具來加密和解密Web.config文件配置部分,你可以在"%WINDOWSDIR%\Microsoft.Net\Framework\version"目錄下找到這個工具。為了加密Web.config文件中的一個節,你可以在這個命令行工具中使用DPAPI機器密鑰,如下所示:
  加密一個特定網站的Web.config文件的通用形式:
復制代碼 代碼如下:
aspnet_regiis.exe -pef section physical_directory -prov provider

  或:
復制代碼 代碼如下:
aspnet_regiis.exe -pe section -app virtual_directory -prov provider

  加密一個特定網站的Web.config文件的具體實例:
復制代碼 代碼如下:
aspnet_regiis.exe -pef "connectionStrings" "C:\Inetpub\wwwroot\MySite" -prov "DataProtectionConfigurationProvider"

  或:
復制代碼 代碼如下:
aspnet_regiis.exe -pe "connectionStrings" -app "/MySite" -prov "DataProtectionConfigurationProvider"

  解密一個特定網站的Web.config文件的通用形式:
復制代碼 代碼如下:
aspnet_regiis.exe -pdf section physical_directory

  或:
復制代碼 代碼如下:
aspnet_regiis.exe -pd section -app virtual_directory

  解密一個特定網站的Web.config文件的具體實例:
復制代碼 代碼如下:
aspnet_regiis.exe -pdf "connectionStrings" "C:\Inetpub\wwwroot\MySite"

  或:
  你還能夠指定由aspnet_regiis.exe來執行machine.config文件的加密/解密。
  【提示】 加密ASP.NET版本1.x中的配置設置
  為了保護ASP.NET版本1.x中的配置設置,開發者需要加密並把敏感的設置存儲在web服務器的注冊表中,並以一種"強"鍵方式存儲。配置文件中不是存儲加密的內容(如ASP.NET 2.0那樣),而只是包含一個到存儲該加密值的注冊表鍵的引用。例如:
復制代碼 代碼如下:
<identity impersonate="true"
userName="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG,userName"
password="registry:HKLM\SOFTWARE\MY_SECURE_APP\identity\ASPNET_SETREG,password" />

  微軟為開發人員提供了aspnet_setreg.exe命令行工具,用於加密敏感的配置信息並且把它移動到一個"強"注冊表入口處。遺憾的是,這個工具僅針對特定的配置設置工作;相比之下,ASP.NET 2.0允許加密任何配置節。
  有關於在一個ASP.NET 1.x應用程序中使用aspnet_setreg.exe的更多信息請參考MSDN中的KB#32990。遺憾的是,這個命令行程序僅能加密配置設置中的預定義的節,並且不允許你加密你自己添加的數據庫連接字符串和其它敏感信息。

加密實例:
復制代碼 代碼如下:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -pdf connectionStrings I:\代碼倉庫\wt_Projects\WebSites\WebSite
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved