【问题标题】:server 2008 certificate private key permissionsserver 2008 证书私钥权限
【发布时间】:2012-12-11 16:18:04
【问题描述】:

我遇到了一个奇怪的问题,我用谷歌搜索并搜索了没有结果。我正在尝试为 windows server 2008 R2 上的 wcf 服务应用程序设置证书。我已经将证书导入到 localmachine 个人存储中,并且我得到了可怕的

"Keyset does not exist...the certificate ... must have a private key that is capable of key exchange. The process must have access rights for the private keys."

我尝试使用 mmc 中的“管理私钥”选项设置私钥的权限,还尝试手动设置位于 C:\programdata\microsoft\crypto\ 中的私钥文件的权限rsa\机器键。我验证我正在使用 findprivatekeys 工具修改正确的文件,并且还尝试使用 WSE X.509 证书工具。出于理智考虑,我什至授予文件上“所有人”的读取权限,但仍然无法正常工作。

这里有什么我遗漏的吗?我正在使用 IIS7,我通常会授予对 IIS_IUSRS 组文件的访问权限。所有这些在 VM 上的其他测试中都运行良好。我什至在其他机器上使用过完全相同的证书,它们在那里工作......

我迷路了...我注意到的一件事是,如果我在“管理私钥”对话框中编辑权限,当我查看文件的权限时,安全设置更改不会反映出来,反之亦然。文件还能在哪里?无论如何,我在这两个地方都授予了最大权限,但没有运气。

【问题讨论】:

    标签: wcf iis-7 windows-server-2008 x509certificate mmc


    【解决方案1】:

    不确定这里发生了什么,但在测试过程中,MachineKeys 文件夹的权限被彻底修改 - 所以我删除了除管理员组之外列出的所有用户的权限,删除了问题证书(通过 mmc ) 并再次重新导入。然后,我只为那个私钥添加了 IIS_IUSRS 读取和执行权限,我似乎已经备份了。

    在相关说明中,我使用 aspnet_regiis -pi 为其他内容导入密钥对,但失败并显示“安全句柄已关闭”。修复 MachineKeys 文件夹的权限也修复了该问题...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      • 1970-01-01
      • 2011-12-13
      • 1970-01-01
      • 2017-01-05
      • 2014-11-26
      • 1970-01-01
      相关资源
      最近更新 更多