如何为应用程序池身份提供私钥访问权限?

3
我发现了这篇优秀的博客,它解释了如何提供私钥访问权限以及为什么需要它:
在 www.microsoft.com 上,我们有许多应用程序使用证书来访问其他Web服务,我们的做法是将带有私钥的证书安装到本地计算机存储中,并为应用程序池标识提供对私钥的访问权限,在应用程序的 web.config 中使用证书的序列号或指纹。其中一个关键挑战是在服务器群集中自动化私钥访问到应用程序池标识。(来源:http://tinyurl.com/cbsmpqk
目前,我的 Silverlight 应用程序无法访问数据库,因为似乎没有访问已安装证书(Azure Cloud)的权限,这是读取加密的 DB 连接字符串所必需的。
它说“Failed to decrypt using provider 'CustomProvider' -> Keyset does not exist.”。
根据上面的博客,我通过为已安装的证书更改权限,为“Authenticated Users”或甚至为“Users”添加额外的读取权限来解决了这个问题。
在这两种情况下都可以正常工作,但我不理解其安全影响。这是否意味着现在任何来自互联网的人都能读取我的证书指纹?我是否错误地打开了一个安全漏洞?
我应该给证书的私钥读取权限分配哪个用户名/角色?
非常感谢。
2个回答

1

0

我认为这并不意味着任何人都可以访问您的私钥。如果您设置“认证用户”或“用户”,那么只有这些组中的用户才具有访问权限。但是,如果您设置“所有人”,那就意味着所有人都有权限。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接