我想加密位于 app.config 中的“ConnectionString
”设置。
但是在运行时,我想直接使用(读取ConnectionString
),而不解密它。
我的意思是,我不想让任何人解密字符串。应该没有解密方法。 我在想;它应该像嵌入 .net/asp.net/iis 功能一样使用。 比如“Windows登录”(可以输入,使用,但不能解密)
===
示例用法;您有一个包含一些关键数据的小型网站。 你没钱买私服, 所以你在共享服务器上工作,如果服务器以某种方式被黑客入侵, 您的应用程序和数据库将被盗。 但是如果你把加密的connectionstring放在app.config中, 这将很难解密它并查看数据库中的内容。
最佳答案
可以使用 aspnet_regiis.exe 工具从命令行对配置文件中的配置设置进行加密和解密。
详细信息在以下 MSDN 文章中进行了描述:
由于该工具主要用于 Web 应用程序,因此它需要将配置文件命名为“web.config”。这意味着您暂时必须将 app.config 文件重命名为 web.config:
rename App.config web.config aspnet_regiis -pef connectionStrings . -prov DataProtectionConfigurationProvider rename web.config App.config
关于c# - 如何加密 app.config(没有解密方法),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14194814/