繁体   English   中英

在web.config文件中加密connectionStrings

[英]Encrypting connectionStrings in a web.config file

我要加密的web.config文件中的任何部分都运行以下命令行实用程序:aspnet_regiis -pe“ anySection” -app“ / SampleApplication”

一切正常,直到我尝试加密connectionStrings部分为止

我定义(但不能更改)我的connectionStrings部分,如下所示:

<connectionStrings>
    <add key="myKey" value="myValue"/>      
</connectionStrings>

但是定义它的“标准”方式是这样的:

  <connectionStrings>
    <add name="myName" connectionString="...." providerName="..." />
  </connectionStrings>

我如何跑步:

aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" 

出现“ ...无法识别的属性'key'....”错误。 如果我将连接字符串部分更改为标准方式,则可以正常工作。 但是我不能使用这种格式。

有没有一种使用aspnet_regiis util的方法? 用代码来做对我来说不是一个选择。

还有没有一种方法可以运行这种方法,而无需指定应用程序(-app“ / SampleApplication”),而是提供了web.config文件的路径?

太感谢了

connectionStrings元素内的add元素具有定义明确的架构(请参阅http://msdn.microsoft.com/zh-cn/library/htw9h4z3.aspx ),它与appSettings元素内的add元素不同。

如果要加密appSettings部分,而这将是整个 appSettings部分,则可以执行以下操作:

aspnet_regiis -pe "appSettings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider"

看来您已复制并粘贴了appSetting

<add key="myKey" value="myValue"/>无效,因为keyvalue不是connectionString元素期望的属性。

您将必须使用“标准”

<add name="myName" connectionString="...." />


connectionStrings元素(ASP.NET设置架构)

我没有以管理员身份运行命令行时遇到类似的错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM