假设应用程序为console application
,并且将以cron job under domain\user
的身份运行。 app.config连接字符串需要加密。从管理员命令提示符处执行了以下命令。
将新的KeyContainer创建为可导出的
aspnet_regiis.exe -pc "SecureKeys" -exp
授予域\用户密钥容器的权限
aspnet_regiis.exe -pa "SecureKeys" "domain\user
包含在app.config中
<configProtectedData>
<providers>
<add keyContainerName="SecureKeys"
useMachineContainer="false"
name="EncryptionProvider"
type="System.Configuration.RsaProtectedConfigurationProvider"/>
</providers>
</configProtectedData>
加密连接字符串
aspnet_regiis.exe -pef CustomConfig . -prov EncryptionProvider
当尝试以域/用户身份执行控制台应用程序时,抛出以下错误:
“无法使用提供程序'RsaProtectedConfigurationProvider'解密。提供程序的错误消息:无法打开RSA密钥容器。”
知道可能是什么问题吗?