1. 程式人生 > 資料庫 >建立自己的RSA金鑰來保護web.config 加密資料庫連線字串

建立自己的RSA金鑰來保護web.config 加密資料庫連線字串

通過建立自己的RSA金鑰來保護web.config
1建立RSA金鑰:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis -pc "Mykeys" -exp (-exp可匯出)
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在建立 RSA 金鑰容器...
成功!
2匯出金鑰:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>

aspnet_regiis -px "Mykeys" "d:\Mykeys.xml" -pri
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在將 RSA 金鑰匯出到檔案...
成功!
3授予對 RSA 金鑰容器的訪問許可權
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis -pa "Mykeys" "NT AUTHORITY\NETWORK SERVICE"
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在新增用於訪問 RSA 金鑰容器的 ACL...
成功!

3.修改web.config
新增:
<configProtectedData>
<providers>
<add name="Mykeys"
type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version=2.0.0.0,

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a,
processorArchitecture=MSIL"
keyContainerName="Mykeys"
useMachineContainer="true" />
</providers>
</configProtectedData>
4.加密web.config
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis.exe -pef "connectionStrings" "D:\aspnet\WebSite62" -prov "Mykeys"
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在加密配置節...
成功!
5.解密web.config
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis.exe -pdf "connectionStrings" "D:\aspnet\WebSite62"

Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在解密配置節...
成功!

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>

6.刪除 RSA 金鑰容器
若要刪除 RSA 金鑰容器,可以使用 Aspnet_regiis.exe 工具和 –pz 開關。在刪除 RSA 金鑰容器之前,請確保已經將金鑰匯出到 XML 檔案中以便能夠在以後匯入,或者確保不需要解密任
何用 RSA 金鑰容器加密的資訊。
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis -pz "Mykeys"

7.匯入
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis -pi "MyKeys" "d:\Mykeys.xml"
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0
用於在本地計算機上安裝和解除安裝 ASP.NET 的管理實用工具。
版權所有(C) Microsoft Corporation。保留所有權利。
正在從檔案匯入 RSA 金鑰...
成功!

8.新電腦:
先匯入指定Mykeys.xml,授權
8A:將第一臺電腦上加密形成的web.config複製到指定位置
8B:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
aspnet_regiis -pi "MyKeys" "d:\Mykeys.xml"
8C:
aspnet_regiis -pa "Mykeys" "NT AUTHORITY\NETWORK SERVICE"
新電腦即可使用加密後的web.config