【问题标题】:Keyset does not exist exception with deployment on windows server 2012 on Azure在 Azure 上的 windows server 2012 上部署密钥集不存在异常
【发布时间】:2013-01-08 09:01:43
【问题描述】:
我在将部署升级到 Windows Server 2012 时遇到问题,我的部署在 osfamily=2 和 .net4 编译时运行良好,但在 .net4.5 和 osfamily=3 时失败,
我在远程虚拟机时看到的异常是“密钥集不存在”,似乎与某些证书有关。我的程序使用证书来加密一些流,并且在我部署它之后应该能够使用这个证书来解码这个流。
我检查了 vm 上的证书,它安装得很好,在正确的位置。
所以我怀疑这是与 2012 年不同的安全策略的问题,它阻止我的角色获取证书中的密钥。
这阻止了我一段时间,所以非常感谢任何线索!
【问题讨论】:
标签:
azure
windows-server-2012
【解决方案1】:
密钥集不存在通常是指当您的程序尝试访问证书的私钥并且由于私钥不存在或无权访问它而无法访问时出现错误
您需要在您的证书存储中找到有问题的证书,验证它是否包含私钥(将显示在证书的属性中)
然后通过右键单击证书存储中的证书并选择:所有任务->管理私钥来验证您的进程/应用程序池是否有权访问私钥。从那里,确保将足够的用户添加到允许列表中
希望对你有帮助