我想加密我的web.config的连接字符串。 Here我发现了一个很好的例子,说明如何做到这一点。我实现了这一点,并在我的开发机器上运行find。 但是如果我把它上传到供应商,它不与下面的错误工作:加密Web.Config中的连接字符串失败
[抛出:SecurityException:请求失败] System.Configuration.DpapiProtectedConfigurationProvider.Encrypt(XmlNode的节点)
在this博客我已阅读,这是因为网络可能运行在中等信任,因此WebConfigurationManager.OpenWebConfiguration
不能使用。相反,应该使用WebConfigurationManager.GetSection
。但是,如果我所提出的部分,调用ProtectSection
失败,出现以下错误信息:
System.InvalidOperationException:此操作在运行时不
申请谁能领我到一个解决方案,如何在web.config文件中(运行时)对连接字符串进行编码(和解码)?
更新
不是一个真正的问题的答案,但主控器给予了充分的信任网络,现在,所有工作得很好。我离开这个问题,也许有人发布了原始问题的解决方案,并帮助这些人有同样的问题,但没有得到充分的信任。
感谢您的回答。但是,行配置配置= WebConfigurationManager.OpenWebConfiguration(“〜”);异常的来源,IIS不会执行它并引发SecurityException! – HCL 2011-04-28 20:55:04
@HCL:您的服务帐户是否对web.config文件具有写入权限? – kbrimington 2011-04-28 20:56:07
@kbrimington:是的,主机的配置工具允许我在目录库上授予权限,并且对根目录(也是虚拟目录)给出了测试IUSR读/写权限。 – HCL 2011-04-28 21:03:24