1

我正在尝试加密我的 web.config 文件的一部分。(密码)这对于像这样的普通部分键很好:

<AppSettings>
    <add key="SomePassword" value="HI I AM ENCRYPTET"/>
<AppSettings>

在 Global.asax 中,我执行以下操作:

System.Configuration.ConfigurationManager.AppSettings["SomePassword"] = Decrypt(System.Configuration.ConfigurationManager.AppSettings["SomePassword"])

这工作正常。但是,当我为 Connection-String 尝试此操作时,会引发异常:“配置是只读的。”

所以,我没有权利写。有人知道如何在不编辑 Connection-String 类的情况下解决这个问题吗?

谢谢和问候

4

1 回答 1

0

您可以通过以下方式将机密从 web.config 文件中移出:

<appSettings file="..\..\AppSettingsSecrets.config"> 

请参阅将密码和其他敏感数据部署到 ASP.NET 和 Azure 网站的最佳做法。http://www.asp.net/identity/overview/features-api/best-practices-for-deploying-passwords-and-other-sensitive-data-to-aspnet-and-azure

对于 Azure,我喜欢使用http://www.powershellcookbook.com/recipe/PukO/securely-store-credentials-on-disk将凭据加密到磁盘。

于 2015-03-20T06:44:14.347 回答