重复Encrypting config files for deployment .NET和Encrypting config files for deployment
在web.config文件中加密信息的最佳方法和工具是什么?
答案 0 :(得分:11)
以下是无需编程即可加密web.config文件的命令...
用于加密
aspnet_regiis -pef "Section" "Path exluding web.config"
解密
aspnet_regiis -pdf "Section" "Path exluding web.config"
通过此命令,您可以加密或解密所有部分。
答案 1 :(得分:7)
我相信有两种方法可以做到这一点:
使用DPAPI或RSA或doing it programmatically使用aspnet_regi。
编程方式非常方便,特别是如果您还想加密app.config。
根据我使用它的经验,如果您编写自定义配置部分,则已将包含该部分的类的DLL安装到GAC中。对于我正在工作的项目,我基本上编写了以下方法:
如果您只是加密连接字符串,那么这可能不会成为问题。您还需要记住是要在机器范围内加密还是在特定用户帐户加密 - 根据您的情况,这两个选项都很有用。为简单起见,我坚持使用机器加密。我提供的链接解释了两种方法的优点。
答案 2 :(得分:4)
答案 3 :(得分:2)
在框架目录中使用aspnet_regiis工具:
-- CONFIGURATION ENCRYPTION OPTIONS --
pe section Encrypt the configuration section. Optional arguments:
[-prov provider] Use this provider to encrypt.
[-app virtual-path] Encrypt at this virtual path. Virtual path must begin with a forward slash.
If it is '/', then it refers to the root of the site. If -app is not specified, the root
web.config will be encrypted.
[-site site-name-or-ID] The site of the virtual path specified in -app. If not specified, the
default web site will be used.
[-location sub-path] Location sub path.
[-pkm] Encrypt/decrypt the machine.config instead of web.config.
pd section Decrypt the configuration section. Optional arguments:
[-app virtual-path] Decrypt at this virtual path. Virtual path must begin with a forward slash.
If it is '/', then it refers to the root of the site. If -app is not specified, the root
web.config will be decrypted.
[-site site-name-or-ID] The site of the virtual path specified in -app. If not specified, the
default web site will be used.
[-location sub-path] Location sub path.
[-pkm] Encrypt/decrypt the machine.config instead of web.config.
答案 4 :(得分:1)
您应该从这里开始,易于理解,在MSDN中详细解释分步指南:How To: Encrypt Configuration Sections in ASP.NET 2.0 Using DPAPI
答案 5 :(得分:1)
您可以通过aspnet_regiis加密web.config中的连接字符串。
加密Web.Config文件中的“连接字符串”部分 您需要按照以下步骤对Web.Config文件中的“连接字符串”部分进行加密
打开Visual Studio命令提示符 您需要从“开始”菜单=>“程序” =>“ Microsoft Visual Studio 2010” =>“ Visual Studio工具” =>“ Visual Studio命令提示符”中打开“ Visual Studio命令提示符”。
使用aspnet_regiis.exe工具加密Web.Config中的“连接字符串”部分
为了加密Web.Config文件中的ConnectionString部分,我们将需要使用aspnet_regiis.exe工具。
语法:
aspnet_regiis.exe -pef“ connectionStrings”“”
示例:
aspnet_regiis.exe -pef“ connectionStrings”“ D:\ Sai \ Projects \ MyTestWebsite”。
您可以参考本文档以获取完整信息:https://microsoftdotnetsolutions.blogspot.com/2018/11/encrypt-and-decrypt-of-connection.html
答案 6 :(得分:0)
使用aspnet_regiis.exe命令行工具
您还可以使用aspnet_regiis.exe命令行工具加密和解密Web.config文件中的部分,该工具位于%WINDOWSDIR%\ Microsoft.Net \ Framework \ version目录中。
请看这里:http://aspnet.4guysfromrolla.com/articles/021506-1.aspx。