我正在为域名生成SSL证书。
我做了什么: 去了IIS管理>服务器证书并单击“创建请求”。这会生成一个* .com文件,里面有我提交给GoDaddy的哈希。 从GoDaddy我拿回了一个包含两个文件的zip:* .crt和* .p7b
我将证书导出到* .cer文件并将其上传到Azure,但是当我尝试部署云项目时出现错误:
具有与HTTPS输入端点关联的指纹的证书 不包含私钥
在互联网上阅读类似问题后,我了解到我的* .cer文件不包含私钥。 我的问题是无论我如何尝试将其导出到* .PFX,都会在证书导出向导中禁用PFX选项。
也不确定它是否相关,但是当我点击IIS中的完整证书申请并选择我从GoDaddy获得的证书时。我收到一个错误:
找不到与此关联的证书请求 证书文件。必须完成证书申请 创建请求的计算机。
答案 0 :(得分:5)
如果您没有从 同一台计算机上执行IIS“创建证书申请”和“完成证书申请”,则无法从IIS导出或从证书管理器导出到PFX > EM> 强>
那是我的问题。我从两台不同的机器上完成了这两个步骤。
我必须创建一个新请求(在IIS中),转到GoDaddy,重新生成我的证书,下载新证书,然后完成请求(在IIS中)。
答案 1 :(得分:3)
事实证明这是完全愚蠢的事情,正如微软通常搞砸了一样。 为域创建证书的过程是您需要在IIS中使用[创建证书请求]。 然后将创建的哈希发送给管理局,并使用IIS中的[完整证书申请],您可以在其中提供管理局提供给您的证书。这将把证书安装到您的本地IIS
安装证书后,您需要右键单击它并导出到* .PFX文件。现在可以将PFX文件上传到Azure或任何其他主机...
如果微软没有确保搞砸了,那么这些过程可能非常简单。
问题是,当您单击[完成证书申请]时,文件打开对话框的文件类型为* .CER,但这是错误的,因为您需要提供* .CRT !!!解决方案是将文件类型select更改为All Files *.*
并选择管理局提供的* .CRT文件。