Asp.net 如何提供对应用程序池标识的私钥访问?
我看到了这个优秀的博客,解释了如何提供私钥访问以及为什么需要私钥: 在www.microsoft.com上,我们有许多使用证书的应用程序 要访问其他web服务,我们的方法是安装 将带有私钥的证书放入本地计算机存储区,然后 提供对私钥和应用程序池标识的访问 在中使用证书的序列号或指纹 应用程序的web.config。其中一个关键挑战是编写脚本 在整个应用程序池中退出对应用程序池标识的私钥访问 服务器场。(来源:) 目前,我的silverlight应用程序无法访问数据库,因为它似乎无法访问已安装的证书(在Azure云上),因为这是读取加密的DB connectionString所必需的 它说使用提供程序“CustomProvider”解密失败->密钥集不存在。 根据上面的博客,我可以通过将已安装证书的权限更改为“已验证用户”的附加读取权限,甚至更改为“用户”权限来解决此问题 在这两种情况下,它都可以正常工作,但我不理解其中的安全含义。这是否意味着现在互联网上的任何人都可以阅读我的证书的指纹?我是否错误地打开了一个安全漏洞 我应该授予哪个用户名/角色对证书私钥的读取权限Asp.net 如何提供对应用程序池标识的私钥访问?,asp.net,.net,iis-7,azure,Asp.net,.net,Iis 7,Azure,我看到了这个优秀的博客,解释了如何提供私钥访问以及为什么需要私钥: 在www.microsoft.com上,我们有许多使用证书的应用程序 要访问其他web服务,我们的方法是安装 将带有私钥的证书放入本地计算机存储区,然后 提供对私钥和应用程序池标识的访问 在中使用证书的序列号或指纹 应用程序的web.config。其中一个关键挑战是编写脚本 在整个应用程序池中退出对应用程序池标识的私钥访问 服务器场。(来源:) 目前,我的silverlight应用程序无法访问数据库,因为它似乎无法访问已安装的证
非常感谢我不认为这意味着任何人都可以访问您的私钥。如果设置“已验证用户”或“用户”,则表示只有这些组中的用户具有访问权限。但如果设置“everyone”,则表示“everyone”。向
IIS AppPool\AppPoolName
用户授予权限。例如,IIS AppPool\DefaultAppPool
从这个答案中: