使用aspnet_regiis.exe加密后的连接字符串错误

时间:2020-03-06 14:28:54  来源:igfitidea点击:

我已使用以下链接中的步骤对web.config文件中的连接字符串进行了加密:
http://www.codeproject.com/KB/database/WebFarmConnStringsNet20.aspx

但是,每当我调用应用程序时,都会出现以下错误:

Failed to decrypt using provider
  'CustomProvider'. Error message from
  the provider: The RSA key container
  could not be opened.

我执行加密的服务器是64位Windows Server 2003 R2 SP2. 因此,我将ACL分配给" NT Authority \ Network Service"。但是它仍然不起作用。

希望有人对我有什么想法才能使它正常工作。

PS。如果我使用默认的rsa密钥" NetFrameworkConfigurationKey"进行加密,则连接字符串将不会出现访问问题。

解决方案

我们是否记得添加

<configProtectedData>

到web.config?

好吧,我找到了问题的根源,孩子也很尴尬。在属性keyContainerName中,我拼写了错误的名称。

那个。这就是导致问题的原因。

显然,即使我们提供了不正确的keyContainerName,加密也将起作用,我错误地认为这将失败。因此,一旦我解密了连接字符串并使用正确的keyContainerName重新加密,它就可以正常工作。

顺便说一句,请确保在更正keyContainerName之前解密现有的连接字符串。 aspnet_regiis.exe将抱怨数据错误,因为提供程序现在有所不同。