使用RsaProtectedConfigurationProvider在asp.net中加密/解密

时间:2010-02-10 05:20:24

标签: asp.net encryption rsaprotectedconfiguration

加密工作正常。但现在我收到一条错误,上面写着“RsaProtectedConfigurationProvider Bad Data”当选中时,我知道我们需要运行命令: aspnet_regiis -pa“NetFrameworkConfigurationKey”“NT AUTHORITY \ NETWORK SERVICE”

我的问题是,如果我在生产环境中运行此命令,它是否会影响同一服务器中托管的任何其他网站。因为它对machine.config文件的更新会对其他一些事情产生影响吗?

1 个答案:

答案 0 :(得分:0)

它不会(不应该)因为该命令不会修改machine.config文件,而是一个控制哪些帐户可以访问密钥容器的ACL。你可以在这里阅读更多内容:

http://msdn.microsoft.com/en-us/library/yxw286t2.aspx

这是文章中的一句话

“默认情况下,RSA密钥容器受安装它们的服务器上的NTFS访问控制列表(ACL)的严密保护。这通过限制谁可以访问加密密钥来提高加密信息的安全性。”

至于你的具体错误,几天前我刚刚使用web.config文件加密,我记得曾经收到过错误的数据错误。经过几次重复设置步骤后,我能够使其工作,但我无法确认哪个步骤使其工作。我对你的案例的猜测是:

  1. 您将错误的密钥文件(从原始容器导出的XML)导入到该计算机上的容器中。
  2. 配置上的数据值搞乱了。
  3. 尝试解密配置文件的帐户没有该密钥容器的权限。在这种情况下,您询问的命令是允许访问给定帐户的命令。
  4. 您可以在configProtectedData部分引用其他密钥容器。虽然不是这样,但我不确定你是否会得到特定的错误数据错误,但这是一个想法。
  5. 希望你毕竟解决了。即使这个问题很老,我认为答案可能对某人有所帮助。