加密Web.config
比如要加密connnection string
<configuration>
<connectionStrings>
<add name=”mySqlServer” connectionString=”Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind;” />
</connectionStrings>
</configuration>
//==使用aspnet_regiis
aspnet_regiis -pe “connectionStrings” -app “/MyApplication”
加密 MyApplication 應(yīng)用程序的 Web.config 文件的 <connectionStrings> 節(jié)
aspnet_regiis -pe “connectionStrings” -app “/MyApplication”
解密
aspnet_regiis -pef “connectionStrings” “C:\PetShop4.0\Web”
加密指定的物理路徑下的web.config
aspnet_regiis -pdf “connectionStrings” “C:\PetShop4.0\Web”
解密
aspnet_regiis -pa “NetFrameworkConfigurationKey” “NT AUTHORITY\NETWORK SERVICE”
授予 NETWORK SERVICE 帳戶對計算機級別的 “NetFrameworkConfigurationKey” RSA 密鑰容器的訪問權(quán)限。
-pkm 對Machine.config 加密
-prov 指定要使用的加密提供程序,如 RsaProtectedConfigurationProvider.
//==如果無法控制物理的服務(wù)器,可以通過代碼來加密web.congif public void EncryptConfig(bool bEncrypt)
{
string path = “/tricks”;
Configuration config = WebConfigurationManager.OpWebConfiguration(path);
ConfigurationSection appSettings = config.GetSection(”connectionString”);
if(bEncrypt)
{
appSettings.SetionInformation.ProtectSection(”DataProtectionConfigurationProvider”);
}
else
{
appSettings.SetionInformation.UnprotectSection();
}
config.Save();
}
參考
受保護配置概述
http://msdn2.microsoft.com/zh-cn/library/hh8x3tas.aspx
使用受保護的配置加密配置信息
http://msdn2.microsoft.com/zh-cn/library/dtkwfdky.aspx