加密web.config部分

时间:2012-09-06 15:36:16

标签: c# asp.net vb.net visual-studio web-config

在.NET 4.0网站中,哪些web.config部分可以加密? 我读到并非所有部分都可以加密,但我找不到任何细节哪些部分可以。

3 个答案:

答案 0 :(得分:2)

MSDN docs开始,很明显可以使用带有web.config选项的Aspnet_regiis.exe工具加密和解密–pe 部分,要加密的 配置元素的名称 ,只要该部分不是以下部分之一:

  

以下是一份清单   无法使用protected加密的配置节   配置: processModel,runtime,mscorlib,startup,   system.runtime.remoting,configProtectedData,satelliteassemblies,   cryptographySettings,cryptoNameMapping和cryptoClasses 。它是   建议您使用其他加密敏感的方法   信息,例如ASP.NET Set Registry控制台应用程序   (Aspnet_setreg.exe)工具,用于保护这些中的敏感信息   配置部分。

以下是加密所有其他可能部分所需的内容:

Encrypting and Decrypting Configuration Sections

Walkthrough: Encrypting Configuration Information Using Protected Configuration

答案 1 :(得分:0)

加密

在命令提示符下转到下面的目录 C:\的Windows \ Microsoft.NET \框架\ v4.0.30319>

  1. 加密连接网络配置部分的命令并加密ShopAPI IIS应用程序web.config文件。
  2. aspnet_regiis -pe“connectionStrings”-app“/ ShopAPI”

    aspnet_regiis -pd“connectionStrings”-app“/ ShopAPI”

答案 2 :(得分:0)

Web.config文件等配置文件通常用于保存敏感信息,包括用户名密码数据库连接字符串加密密钥。这就是我们应该始终以加密形式保留这些敏感部分的原因。

您可以加密的部分:

  • <appSettings>
  • <connectionStrings>
  • <identity>
  • <sessionState>

无法加密的部分:

  • <processModel>
  • <runtime>
  • <mscorlib>
  • <startup>
  • <system.runtime.remoting>
  • <configProtectedData>
  • <satelliteassemblies>
  • <cryptographySettings>
  • <cryptoNameMapping>

  

请记住:加密和解密数据会产生性能开销。   要将此开销降至最低,请仅加密您的部分   存储敏感数据的配置文件。