日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

web.config加密解密批处理

發布時間:2025/5/22 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 web.config加密解密批处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

打開.Net Framework附帶的SDK命令提示符。

加密命令:
aspnet_regiis -pe "connectionStrings" -app "/encrypttest"
-pe開關用來指定web.config中需要加密的節(Web.Config文件中的connectionStrings配置節)。
-app開關用來指定IIS里面的虛擬目錄,如果為根目錄網站,為"/".

解密命令:
aspnet_regiis -pd "connectionStrings" -app "/encrypttest"
唯一的區別就是,我們用-pd開關代替了-pe開關。

?

?

1、加密EncryptWebConfig.bat

@echo off
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" "D:\Program Files\Microsoft.NET\ Pet Shop 4.0Web"
PAUSE

2、解密DecryptWebConfig.bat

@echo off
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pdf "connectionStrings" "D:\Program Files\Microsoft.NET\ Pet Shop 4.0Web"
PAUSE

解決方法是:
進dos運行:aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"
如果運行出錯,需要把目錄 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 放入環境變量path中。
此時就可以成功訪問網站了。
同樣可以通過命令行來實現“RSAProtectedConfigurationProvider”加密


現在把找到文件附在下面:

我們如果想對web.config的數據庫連接字符串進行加密的話,那么這里提供了兩個方法。

方法一、

?? 使用“DataProtectionConfigurationProvider”形式加密,創建test.aspx文件,代碼如下:

需要添加引用

using System.Web.Configuration;

using System.IO;

//加密

protected void Button1_Click(object sender, EventArgs e)

??? {

??????? Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

??????? ConfigurationSection section = config.GetSection("connectionStrings");

???????

??????? if (section != null && !section.SectionInformation.IsProtected)

??????? {

??????????? section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");

??????????? config.Save();

??????? }

??? }

//解密

??? protected void Button2_Click(object sender, EventArgs e)

??? {

??????? Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

??????? ConfigurationSection section = config.GetSection("connectionStrings");

??????? if (section != null && section.SectionInformation.IsProtected)

??????? {

??????????? section.SectionInformation.UnprotectSection();

??????????? config.Save();

??????? }

??? }

總結:此方法很方便,并且很簡單,但安全性沒有密鑰加密高。

方法二、

使用“RSAProtectedConfigurationProvider”形式來加密

test.aspx程序文件基本如上,

section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");

改成

section.SectionInformation.ProtectSection("RSAProtectedConfigurationProvider");

但這個時候你訪問網站的時候很有可能會出現

說明: 在處理向該請求提供服務所需的配置文件時出錯。請檢查下面的特定錯誤詳細信息并適當地修改配置文件。

分析器錯誤信息: 未能使用提供程序“RsaProtectedConfigurationProvider”進行解密。提供程序返回錯誤信息為: 打不開 RSA 密鑰容器。

?

這樣的錯誤,解決方法是:

進dos運行:aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"

如果運行出錯,需要把目錄 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 放入環境變量path中。

此時就可以成功訪問網站了。

同樣可以通過命令行來實現“RSAProtectedConfigurationProvider”加密

注意:你也可以不運行 aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"命令來注冊默認的 RsaProtectedConfigurationProvider 的RSA 密鑰容器

方法如下:

??????? 1)創建一個可導出的rsa密鑰容器,命名為Key

aspnet_regiis -pc "Key" -exp

2)在你要加密的信息前面指定密鑰容器,如:

<configProtectedData>

??????? <providers>

??????????? <clear />

??????????? <add name="KeyProvider"

     ?? type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version=2.0.0.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"

     ?? keyContainerName="Key"

     ?? useMachineContainer="true"/>

??????? </providers>

</configProtectedData>

<connectionStrings>

??????? <add name="SQLConnString" connectionString="Data Source=yourIP;Initial Catalog=test;User Id=yourID;Password=yourPassword;"

???????? providerName="System.Data.SqlClient" />

</connectionStrings>

并且確保在configuration節的xmlns屬性有如下值:

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

3)對配置文件進行加密

aspnet_regiis -pef "connectionStrings" "E:\project\Test" -prov "KeyProvider"

參數分別為:需要加密的配置節、項目所在目錄的物理路徑、加密所使用的密鑰容器名稱

再看web.config文件,就會發現connectionStrings節已經被加密了,但是運行程序會發現程序仍然可以正確訪問數據庫。

此時,只需運行:

aspnet_regiis -pdf "connectionStrings" "E:\project\Test"

就可以對web.config文件進行解密。

(注意,如果還是有錯誤,那可能是您沒有給生成的密匙文件足夠的權限,去到 C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys 目錄下,

找到剛生成的密匙文件,把network service用戶的讀取權限賦予給它,就可以了,直接用命令的話也可以:命令如下 aspnet_regiis -pa "Key" "NT AUTHORITY\NETWORK SERVICE" ,可能需要重新啟動iis)

4)把密鑰容器導出為xml文件

aspnet_regiis -px "Key" "e:\Key.xml"

這個命令只導出公鑰,因此以后只能用于加密,而無法解密。

aspnet_regiis -px "Key" "e:\Keys.xml" -pri

這個則連私鑰一起導出了,所以我們要用這個。

5)把密鑰容器刪除

aspnet_regiis -pz "Key"

刪除后再運行程序,會提示出錯:

分析器錯誤信息: 未能使用提供程序“KeyProvider”進行解密。提供程序返回錯誤信息為: 打不開 RSA 密鑰容器。

同理可以證明,在任何一臺未安裝正確的密鑰容器Key的機器上,程序都無法對connectionStrings節進行解密,因此也就無法正常運行。

6)導入key.xml文件

aspnet_regiis -pi "Key" "e:\Keys.xml"

此時,再運行程序會發現又可以解密了。證明加密與解密機制運行正常。

最后說一下這個機制所提供的安全性保障可以運用在什么方面:

對winform程序的app.config進行加密實際意義并不大,因為無論如何,客戶機都可以通過運行aspnet_regiis -pdf 來對配置文件進行解密,從而暴露敏感信息。

對于web.config進行加密的意義也僅限于,當web.config文件不小心泄露時,不會同時泄露敏感信息,如果惡意攻擊者已經取得了在服務器上運行程序的權限,那么同app.config一樣,可以很容易通過通過運行aspnet_regiis -pdf 獲取明文了。

還有,通過aspnet_regiis -pa "Key" "NT AUTHORITY\NETWORK SERVICE"控制對不同用戶對密鑰容器的訪問權限,應該還可以進一步獲取一些安全性,比如可以控制某些用戶即使登錄到服務器上,也無法用aspnet_regiis -pdf對配置文件進行解密。

轉載于:https://www.cnblogs.com/scgw/archive/2011/01/16/1937009.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的web.config加密解密批处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产高清视频一区 | 成年人在线免费观看视频网站 | 一区二区激情 | www.亚洲| 蜜臀av性久久久久av蜜臀妖精 | 亚洲一区久久 | 国产成人精品一区二三区 | 欧美精品啪啪 | 亚洲美女视频在线 | 久久美女视频 | 少女逼逼 | 欧美第一页浮力影院 | 谁有免费的黄色网址 | 欧美另类一区 | 伊人一区二区三区四区 | 艳妇臀荡乳欲伦交换gif | www.色图 | 青青操av在线 | 4438x在线观看| 能看的av网站 | 亚洲高清在线 | 日韩素人 | 中文字幕在线观看视频www | 亚洲精品中文字幕在线播放 | 九一精品在线 | 欧美精品一区二区蜜臀亚洲 | 色就是色av | 日韩精品999 | 美女视频在线免费观看 | 国产性猛交╳xxx乱大交一区 | 中文字幕无码乱人伦 | free欧美性69护士呻吟 | 九九在线视频 | 亚洲欧美一区二区三区孕妇 | 成人动漫一区二区三区 | 欧美一区二区三区视频 | 蜜桃久久久久久久 | 免费不卡视频 | 国产一区二区在线免费 | 国产成人精品片 | 国产乱妇无码大片在线观看 | 鲁鲁久久| 亚洲国产日韩a在线播放性色 | 欧美在线另类 | 日韩在线观看不卡 | 久久国产秒| 东凛在线观看 | 九九精品在线观看 | 黄色高清在线观看 | 97公开免费视频 | 顶臀精品视频www | 性高潮久久久久久久久久 | 国产成人愉拍精品久久 | 日韩免费视频一区二区 | 成人免费入口 | 久草电影在线 | 色香蕉在线视频 | 中文字幕一区二区在线观看视频 | 中文字幕精品一区二 | 欧美精品h| 激情五月五月婷婷 | 老司机久久精品视频 | 人妻精品久久久久中文字幕69 | 中文字幕一二 | 亚洲 欧美 激情 小说 另类 | 午夜视频在线播放 | 欧美一级性片 | 韩国无码av片在线观看网站 | 麻豆 国产| 午夜精品久久久久久久 | 色小姐com| 一本一道久久综合狠狠老精东影业 | 欧美日韩高清 | 午夜精品在线免费观看 | 欧美一级黄色片在线观看 | 91国在线视频 | 最新国产视频 | 夫妻自拍偷拍 | 奇米久久| 国产精品久久..4399 | 欧美xxxx非洲 | 人人妻人人爽人人澡人人精品 | 免费一区| 黄色三级视频 | 黄色xxxxx| 欧美婷婷精品激情 | 日韩特级毛片 | 欧美激情一区二区三区蜜桃视频 | 午夜中出| 男女扒开双腿猛进入爽爽免费 | 中文字幕丰满孑伦无码专区 | 美女性生活视频 | 成人天堂噜噜噜 | 亚洲色图另类图片 | 欧美日韩视频在线观看一区 | 胸网站 | 蜜桃视频日韩 | 亚洲一区二区三区久久久 | 亚洲精品.www |