asp.net web.config加密解密方法
更新時間:2009年11月30日 21:04:35 作者:
你還能夠使用aspnet_regiis.exe命令行工具來加密和解密Web.config文件配置部分,你可以在"%WINDOWSDIR%\Microsoft.Net\Framework\version"目錄下找到這個工具。
使用命令行工具aspnet_regiis.exe
你還能夠使用aspnet_regiis.exe命令行工具來加密和解密Web.config文件配置部分,你可以在"%WINDOWSDIR%\Microsoft.Net\Framework\version"目錄下找到這個工具。為了加密Web.config文件中的一個節(jié),你可以在這個命令行工具中使用DPAPI機器密鑰,如下所示:
加密一個特定網(wǎng)站的Web.config文件的通用形式:
aspnet_regiis.exe -pef section physical_directory -prov provider
或:
aspnet_regiis.exe -pe section -app virtual_directory -prov provider
加密一個特定網(wǎng)站的Web.config文件的具體實例:
aspnet_regiis.exe -pef "connectionStrings" "C:\Inetpub\wwwroot\MySite" -prov "DataProtectionConfigurationProvider"
或:
aspnet_regiis.exe -pe "connectionStrings" -app "/MySite" -prov "DataProtectionConfigurationProvider"
解密一個特定網(wǎng)站的Web.config文件的通用形式:
aspnet_regiis.exe -pdf section physical_directory
或:
aspnet_regiis.exe -pd section -app virtual_directory
解密一個特定網(wǎng)站的Web.config文件的具體實例:
aspnet_regiis.exe -pdf "connectionStrings" "C:\Inetpub\wwwroot\MySite"
或:
你還能夠指定由aspnet_regiis.exe來執(zhí)行machine.config文件的加密/解密。
【提示】 加密ASP.NET版本1.x中的配置設(shè)置
為了保護ASP.NET版本1.x中的配置設(shè)置,開發(fā)者需要加密并把敏感的設(shè)置存儲在web服務(wù)器的注冊表中,并以一種"強"鍵方式存儲。配置文件中不是存儲加密的內(nèi)容(如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" />
微軟為開發(fā)人員提供了aspnet_setreg.exe命令行工具,用于加密敏感的配置信息并且把它移動到一個"強"注冊表入口處。遺憾的是,這個工具僅針對特定的配置設(shè)置工作;相比之下,ASP.NET 2.0允許加密任何配置節(jié)。
有關(guān)于在一個ASP.NET 1.x應(yīng)用程序中使用aspnet_setreg.exe的更多信息請參考MSDN中的KB#32990。遺憾的是,這個命令行程序僅能加密配置設(shè)置中的預定義的節(jié),并且不允許你加密你自己添加的數(shù)據(jù)庫連接字符串和其它敏感信息。
加密實例:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -pdf connectionStrings I:\代碼倉庫\wt_Projects\WebSites\WebSite
你還能夠使用aspnet_regiis.exe命令行工具來加密和解密Web.config文件配置部分,你可以在"%WINDOWSDIR%\Microsoft.Net\Framework\version"目錄下找到這個工具。為了加密Web.config文件中的一個節(jié),你可以在這個命令行工具中使用DPAPI機器密鑰,如下所示:
加密一個特定網(wǎng)站的Web.config文件的通用形式:
復制代碼 代碼如下:
aspnet_regiis.exe -pef section physical_directory -prov provider
或:
復制代碼 代碼如下:
aspnet_regiis.exe -pe section -app virtual_directory -prov provider
加密一個特定網(wǎng)站的Web.config文件的具體實例:
復制代碼 代碼如下:
aspnet_regiis.exe -pef "connectionStrings" "C:\Inetpub\wwwroot\MySite" -prov "DataProtectionConfigurationProvider"
或:
復制代碼 代碼如下:
aspnet_regiis.exe -pe "connectionStrings" -app "/MySite" -prov "DataProtectionConfigurationProvider"
解密一個特定網(wǎng)站的Web.config文件的通用形式:
復制代碼 代碼如下:
aspnet_regiis.exe -pdf section physical_directory
或:
復制代碼 代碼如下:
aspnet_regiis.exe -pd section -app virtual_directory
解密一個特定網(wǎng)站的Web.config文件的具體實例:
復制代碼 代碼如下:
aspnet_regiis.exe -pdf "connectionStrings" "C:\Inetpub\wwwroot\MySite"
或:
你還能夠指定由aspnet_regiis.exe來執(zhí)行machine.config文件的加密/解密。
【提示】 加密ASP.NET版本1.x中的配置設(shè)置
為了保護ASP.NET版本1.x中的配置設(shè)置,開發(fā)者需要加密并把敏感的設(shè)置存儲在web服務(wù)器的注冊表中,并以一種"強"鍵方式存儲。配置文件中不是存儲加密的內(nèi)容(如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" />
微軟為開發(fā)人員提供了aspnet_setreg.exe命令行工具,用于加密敏感的配置信息并且把它移動到一個"強"注冊表入口處。遺憾的是,這個工具僅針對特定的配置設(shè)置工作;相比之下,ASP.NET 2.0允許加密任何配置節(jié)。
有關(guān)于在一個ASP.NET 1.x應(yīng)用程序中使用aspnet_setreg.exe的更多信息請參考MSDN中的KB#32990。遺憾的是,這個命令行程序僅能加密配置設(shè)置中的預定義的節(jié),并且不允許你加密你自己添加的數(shù)據(jù)庫連接字符串和其它敏感信息。
加密實例:
復制代碼 代碼如下:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -pdf connectionStrings I:\代碼倉庫\wt_Projects\WebSites\WebSite
相關(guān)文章
使用源鏈接對ASP.NET Core源代碼進行調(diào)試
這篇文章介紹了使用源鏈接對ASP.NET Core源代碼進行調(diào)試的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-02-02asp.net(c#)網(wǎng)頁跳轉(zhuǎn)七種方法小結(jié)
在asp.net下,經(jīng)常需要頁面的跳轉(zhuǎn),下面是具體的幾種方法。跳轉(zhuǎn)頁面是大部編輯語言中都會有的,正面我們來分別介紹一下關(guān)于.net中response.redirect sever.execute server.transfer 三種頁面跳轉(zhuǎn)的方法2009-11-11asp.net gridview的Rowcommand命令中獲取行索引的方法總結(jié)
asp.net gridview的Rowcommand命令中獲取行索引的方法總結(jié),需要的朋友可以參考下。2010-05-05.NET獲取客戶端的操作系統(tǒng)版本、瀏覽器版本和IP地址
這篇文章主要為大家詳細介紹了.NET如何獲取客戶端的操作系統(tǒng)版本、瀏覽器版本和IP地址,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-11-11.Net Core 使用NLog記錄日志到文件和數(shù)據(jù)庫的操作方法
這篇文章主要介紹了.Net Core 使用NLog記錄日志到文件和數(shù)據(jù)庫的操作方法,本文分步驟通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2021-07-07ASP.NET Repeater 單雙行數(shù)據(jù)換色示例
ASP.NET Repeater 單雙行數(shù)據(jù)換色根據(jù)點擊Repeater的ItemCreated觸發(fā)事件來時實現(xiàn)換色2014-10-10