我们如何加密web.config文件中的连接字符串部分?在web.config中加密连接字符串
回答
使用ASPNET_REGIIS.EXE http://msdn.microsoft.com/en-us/library/zhhddkxy.aspx
http://msdn.microsoft.com/en-us/library/system.configuration.sectioninformation.protectsection.aspx
你能告诉我什么是使用aspnet_regiis.exe工具的优点,当加密文件只能在本地机器使用,并且不能在托管服务器中使用? – 2017-11-25 22:02:29
的Rahul,从ASCII将字符串转换成BASE64字符串不是加密,这是你的第一个链接建议秒。我们可以很容易地将base64转换为ASCII。
使用configsection.protectSection()的RSA密钥是适当的加密,可用于的Web.config文件的部分。
检查此链接:http://www.beansoftware.com/ASP.NET-Tutorials/Encrypting-Connection-String.aspx
请注意,我们不能在信任级别设置为中等信任共享主机环境加密Web.config文件。
为了节省不必访问外部链接,在C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319(用于.NET 4/4.5)
aspnet_regiis.exe -pe "connectionStrings" -app "/YourWebSiteName" -prov "DataProtectionConfigurationProvider"
要使用此工具解密connectionStrings节,您可以在aspnet_iisreg.exe工具中指定以下命令。
aspnet_regiis.exe -pd "connectionStrings" -app "/YouWebSiteName"
请问当使用aspnet_regiis.exe工具的加密文件只能在本地机器上使用并且不能在托管服务器中使用时,请问使用aspnet_regiis.exe工具的优点是什么? – 2017-11-25 22:06:41
,这实际上取决于你想要加密文件的原因 - 如果是为了开发而且你的开发机器上没有任何敏感信息,那么我认为没有多少意义(除了测试),但是在活的服务器或有可能被黑客攻击的敏感信息的计算机..那么你的好处 – 2017-12-22 19:04:15
加密对于为应用程序提供安全性很有用。请找到以下步骤来加密web.config。
- 打开命令具有管理员权限
- 在命令提示符提示下,输入
- CD C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319
- 如果您的网络配置位于“d:\文章\ EncryptWebConfig” 目录路径,然后输入以下加密的ConnectionString:
- ASPNET_REGIIS -pef “的ConnectionStrings”“d:\文章\ EncryptWebConfig
为了更安全,我使用了其他一些东西。在我的Web.config中,我添加了以下代码。
<httpProtocol>
<customHeaders>
<add name="x-Frame-Option" value="Deny or SEMEORGIN" />
<remove name="Server" />
<remove name="X-AspNet-Version" />
<remove name="X-AspNetMvc-Version" />
<remove name="X-Powered-By" />
</customHeaders>
</httpProtocol>
运行此命令中: ASPNET_REGIIS.EXE -pef “的ConnectionStrings” “pathToWebConfig”
或者,如果你想这个以编程方式运行,你可以创建一个进程:
string fileName = @"C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe";
if (8 == IntPtr.Size
|| (!string.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))))
fileName = @"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe";
string arguments = $"-pef \"connectionStrings\" \"{application.Path}\"";
using (Process process = new Process())
{
process.EnableRaisingEvents = true;
process.StartInfo = new ProcessStartInfo
{
FileName = exeName,
Arguments = arguments,
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true,
CreateNoWindow = true
};
process.Start();
processOutput.Output = process.StandardOutput.ReadToEnd();
bool exited = process.WaitForExit(timeoutMilliseconds);
if (exited)
{
processOutput.ExitCode = process.ExitCode;
}
}
你能告诉我什么是使用aspnet_regiis.exe工具的优点,当加密文件只能在本地机器使用,并且不能用于托管服务器?! – 2017-11-25 22:07:03
- 1. web.config中的加密连接字符串
- 2. 简化web.config连接字符串加密
- 3. web.config中的加密和未加密的连接字符串?
- 4. 在C#中的web.config文件中加密连接字符串
- 5. 需要在web.config中加密连接字符串和stmp信息
- 6. 在web.config中加密的连接字符串发生错误
- 7. 加密Web.Config中的连接字符串 - 为什么?
- 8. 加密ASP.Net中的数据库连接字符串Web.config
- 9. 加密Web.Config中的连接字符串失败
- 10. ASP Membership无法处理web.config中的加密连接字符串
- 11. 加密web.config中的密码字符串
- 12. 加密连接字符串
- 13. 在app.config中加密连接字符串
- 14. 在Web.config中的连接字符串
- 15. asp.net mvc 3 web.config连接字符串加密
- 16. 加密/解密连接字符串
- 17. 如何从web.config中获取log4net来解密加密的连接字符串?
- 18. web.config中的连接字符串
- 19. web.config中的连接字符串安全
- 20. web.config中的sqlite连接字符串
- 21. 确保连接字符串和web.config中
- 22. web.Config中的连接字符串
- 23. 如何在Web.config中加密连接字符串 - 退出的内容?
- 24. 在web.config中加密连接字符串的最佳方式是什么?
- 25. 在web.config中连接到MSSQL时没有连接字符串
- 26. 使用msdeploy在web.config中添加新的连接字符串paramters.xml
- 27. SubSonic 2.2加密连接字符串
- 28. 加密连接字符串,怎么样?
- 29. ASP.NET连接字符串加密
- 30. 如何加密Sql连接字符串?
的第二个环节是垃圾。混淆与加密不同。 – 2014-08-29 22:35:33
关于第二个链接:不推荐使用“默默无闻的安全性”,查找Kerckhoffs的原则。 – Calum 2015-04-16 09:01:30
你能告诉我使用aspnet_regiis有什么好处。exe工具,当加密文件只能在本地机器使用,并不能用于托管服务器?! – 2017-11-25 22:02:10