快捷导航
错误截图如下,请帮忙看看
举报 使用道具
| 回复

共 3 个关于在iiS 上安装SSL报错,请帮忙的回复 最后回复于 2016-8-11 18:02

sam_wosign 注册会员 发表于 2014-8-12 11:11:29 | 显示全部楼层
本帖最后由 sam_wosign 于 2014-8-12 11:24 编辑



您好,这个报错是由于以下几种问题产生:
方案1、最常见的情况是当用户使用IIS MMC卡导入证书,他们取消对“允许此证书导出”。这导致在一个破碎键集,从而导致该问题。




解决方案:



有两种方法来解决这个问题。在我们开始之前关闭,删除/删除存储中的现有证书。
1)如果使用IIS MMC卡导入证书,然后确保“允许此证书导出”被选中。
2)如果使私钥可导出的是不是一个选项,然后使用证书MMC导入证书。请通过以下KB如何使用MMC导入证书:








方案2、另一个原因,这可能会导致一个破碎的键集,是由于在MachineKeys的文件夹中缺少权限。这是在所有的私有密钥被存储的位置。文件夹路径(IIS7以上)是如下图所示:C:\ ProgramData\ MICROSOFT \Crypto\ RSA\ MachineKeys的
在此文件夹的默认权限在下面的文章中描述:





解决方案:



首先,删除/移除破损证书的存储区。确保权限是按照上面提到的文章。因此,我们需要权限的管理员和每个人的帐户。千万要记得选择






注意:有可能是一种可能性,这个问题甚至可能在确保正确的权限可以看出。在这种情况下,使用procmon.exe工具,并固定在MachineKeys文件夹内的特定文件的访问被拒绝的错误。
你也可以尝试给系统帐户MachineKeys文件夹的完全权限。

之后,在方案1中描述给予必要的权限,重新导入证书。



方案3、还有另外一种可能,即确保了上述两种甚至之后可能会出现的问题。我观察到这种行为通常是在Windows Server 2008上的这取决于证书的KeySpec财产。
该KeySpec属性指定私钥是否可用于加密或签名,或二者兼有。
下面的MSDN文章描述KeySpec属性:





为了检查该证书的KeySpec属性,使用下面的命令:



                                       certutil -v -store  my <thumbprint>



注:在上面的命令中的指纹信息可以在证书的详细信息选项卡中找到。以下是有效的命令:



certutil -v -store my "32 b5 39 8e d3 c9 c6 f1 a3 50 bc d4 b5 14 eb b5 a4 5d 1f c6"

certutil -v -store my "32b5398ed3c9c6f1a350bcd4b514ebb5a45d1fc6"

certutil -v -store my 32b5398ed3c9c6f1a350bcd4b514ebb5a45d1fc6


获取上述命令的输出中一个记事本,然后搜索KeySpec,这是CERT_KEY_PROV_INFO_PROP_ID节的一部分。该KeySpec表示为十六进制值







如上所述它上面可以采取三个值:






因此,如果KeySpec值设置为任何大于1的其他的问题是更可能是当CSR是使用定制模板生成,而不是指定的KeySpec被发生的问题能够被看见。
每当没有明确指定KeySpec属性,它需要2即默认值,它可用于仅签名的目的。



解决方案:

所以,你需要记住的一件事是,KeySpec属性必须明确指定。
1)如果您是通过生成的代码证书,然后确保你的KeySpec属性明确设置为1。
2)如果使用的certreq.exe工具以及一个inf文件提交请求到SAN中,确保你明确指定KeySpec属性为1。
&#9702;Refer下面的文章是:http://support.microsoft.com/kb/931351
3)Remember在创建证书签名请求中指定的KeySpec属性。一旦证书已颁发此不能修改。所以记得要设置适当的值。
4)Also与密钥用法属性比较KeySpec并确保两者匹配逻辑。
例如,对于证书的KeySpec等于AT_KEYEXCHANGE,密钥用法应该是
XCN_NCRYPT_ALLOW_DECRYPT_FLAG| XCN_NCRYPT_ALLOW_KEY_AGREEMENT_FLAG。


  
XCN_NCRYPT_ALLOW_USAGES_NONE
The permitted uses are not defined.
XCN_NCRYPT_ALLOW_DECRYPT_FLAG
The key can be used to decrypt content. This maps to the following X509KeyUsageFlags values:
  • XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE
  • XCN_CERT_DECIPHER_ONLY_KEY_USAGE
  • XCN_CERT_ENCIPHER_ONLY_KEY_USAGE
  • XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE
XCN_NCRYPT_ALLOW_SIGNING_FLAG
The key can be used for signing. This maps to the following X509KeyUsageFlags values:
  • XCN_CERT_CRL_SIGN_KEY_USAGE
  • XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE
  • XCN_CERT_KEY_CERT_SIGN_KEY_USAGE
XCN_NCRYPT_ALLOW_KEY_AGREEMENT_FLAG
The key can be used to establish key agreement between entities.
XCN_NCRYPT_ALLOW_ALL_USAGES
All of the uses defined for this enumeration are permitted.


以上摘自:




希望对您能有所帮助


举报 使用道具
blmcm 注册会员 发表于 2014-8-17 19:50:57 | 显示全部楼层
鉴定完毕!











bjcars.net
举报 使用道具
WS_Daniel 版主 发表于 2016-8-11 18:02:20 | 显示全部楼层
占用.jpg 我的情况也是一样。根据上面的解决方案来做就可以了。
举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发新帖

版块推荐百宝箱

快速回复 返回顶部 返回列表