加密HttpHandler的配置文件

时间:2011-12-06 13:58:07

标签: asp.net .net iis iis-7

我有“Class library projet”,后来在网络服务器上作为HttpHandler使用。所以我有本地2个文件app.config(对于本地开发,因为它是一个dll)和web.config(用于远程Web服务器)。

所以现在我想加密配置文件。所有内容都已加密并导入远程Web服务器。但处理程序不起作用。我收到错误:"Failed to decrypt using provider 'My_Provider'. Error message from the provider: The RSA key container could not be opened."

在我的开发电脑上一切正常。怎么了?

所以这是我的导出步骤

  

cd%windir%\ Microsoft.NET \ Framework \ v4.0.30319

     

aspnet_regiis -pc“My_Keys”-exp

     

aspnet_regiis -pa“My_Keys”“IIS APPPOOL \ CustomAppPool”

     

aspnet_regiis -pef“connectionStrings”“HandlerProjectPath”-prov   “My_Provider”

     

aspnet_regiis -px“MyKeys”“HandlerProjectPath \ MyKeys.xml”-pri

     

暂停

这些是导入步骤

  

%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis -pi   “My_Keys”“MyKeys.xml”

     

暂停

P.S。我的处理程序在我的自定义AppPool中的IIS 7中工作,名称为“CustomAppPool”。我在我的电脑上专门创建了一个应用程序池名称。

这是我的configData

  

                 文化=中性,   公钥= b03f5f7f11d50a3a,
                 ProcessorArchitecture用于= MSIL“

       keyContainerName="My_Keys"
       useMachineContainer="true" />
</providers>   </configProtectedData>

提前致谢!

1 个答案:

答案 0 :(得分:1)

我认为您需要在导入密钥对后将容器的访问权限授予分配给AppPool的IIS标识。