使用certreq的CRYPT_E_NOT_FOUND问题

Dan*_*can 5 ssl azure

我正在尝试将SSL证书加载到我的Azure环境中.我按照此处官方Azure文档说明进行操作.

当我运行certreq -accept -user ...它返回:

无法安装证书颁发机构颁发的证书.联系您的管理员.找不到对象或属性.0x80092004(-2146885628 CRYPT_E_NOT_FOUND)

我是以管理员身份运行的.我正在使用GoDaddy获取我的证书.我转换了godaddy给你的crt(出口).

我没有看到任何修复,但标准"支付我们,我们将为您修复间谍软件"

采取的步骤:

  1. 我在go daddy上创建了dns子域名.

  2. 然后,我按照上面链接中的说明创建了我的证书请求.(创建文本文件并对其运行certreq -new命令.

  3. 我把这个文件上传到godaddy

  4. 当godaddy完成授权我的密钥后,我下载了密钥的IIS版本.

  5. 解压缩内容.两个文件包括crt和p7b

  6. 我在个人文件夹中将证书安装在我的本地计算机上(我尝试使用和不使用此步骤).

  7. 然后我将crt导出到cer文件.我注意到它确实说它没有在导出的最后一个屏幕上导出密钥.

  8. 然后我在cer上运行了certreq -accept -user命令.此时我收到了Crypt_E_Not_found错误.

小智 12

使用文档中的certreq说明和GoDaddy证书时,我遇到了同样的错误.我通过接受这样的请求来修复它:

certreq -accept -machine <RandomFilenameFromGoDaddy>.crt
Run Code Online (Sandbox Code Playgroud)

我认为问题在于myrequest.txt文件中包含的官方说明MachineKeySet = True - 我认为这需要MachineKeySet = False(默认)才能成为用户范围.


Dan*_*can 0

我通过从 Windows 功能激活服务加载 IIS 解决了这个问题。然后,我按照说明为 IIS 创建证书请求。

在本地计算机上的 IIS 中创建证书请求后,我将其上传到 GoDaddy 并照常按照其余说明进行操作。

https://www.digicert.com/csr-creation-microsoft-iis-7.htm

这不是一个好的答案,但至少是一个开始行动的答案。如果我找到更好的东西,我会发布它。