Ssl Azure https与pfx文件

Ssl Azure https与pfx文件,ssl,https,azure,ssl-certificate,Ssl,Https,Azure,Ssl Certificate,我正在尝试为我的azure服务创建https端点。我得到了一个p7b文件,我把它转换成了cer文件。从cer中,我可以用几行c转换成pfx 现在,当我将证书上载到azure时,一切似乎都正常,我复制了指纹,并尝试使用新的指纹进行升级,作为终结点的一部分,我在azure中遇到了一个错误 指纹为3FA490D1D4957942CD2ED545F6E823D0008796EA2且与HTTPS输入端点endpointName关联的证书不包含私钥 您是如何将.p7b转换为.cer的?您的问题是cer文件不

我正在尝试为我的azure服务创建https端点。我得到了一个p7b文件,我把它转换成了cer文件。从cer中,我可以用几行c转换成pfx

现在,当我将证书上载到azure时,一切似乎都正常,我复制了指纹,并尝试使用新的指纹进行升级,作为终结点的一部分,我在azure中遇到了一个错误

指纹为3FA490D1D4957942CD2ED545F6E823D0008796EA2且与HTTPS输入端点endpointName关联的证书不包含私钥


您是如何将.p7b转换为.cer的?您的问题是cer文件不包含私钥信息,所以当您将其导出为pfx时,它没有使用SSL所需的信息

转换为pfx的最简单方法可能是使用certmgr.msc将证书导入本地计算机,然后导出证书,确保选择“是”,导出私钥选项


编辑:在GregS的评论之后做了更多的研究之后,问题仍然是一样的,您的pfx没有使用SSL所需的私钥,但原因实际上是.p7b文件没有私钥。您需要使用不同的证书。已经有一个。

我在为Azure生成.pfx时遇到了相同的问题。p7b证书由Thawte生成。经过一些研究,我终于成功了

从IIS生成CSR证书请求。可能是你的本地IIS。

根据CSR生成证书。CA负责这件事。如果您正在生成自签名证书,您也可以从ISS生成。这一点很重要,因为当您导入它时,第3步IIS将验证证书是否在那里生成

将证书导入本地IIS。它必须是一个.cer文件。只需打开p7b文件,您就会看到其中的证书链。将域证书导出到.cer文件。然后可以使用它将其导入IIS。

将证书从IIS导出到.pfx。此时,证书包含由IIS添加的适当私钥。当您导出它时,IIS将要求您输入密码。


我曾经和你有过完全相同的问题,下面是关于这个问题的故事:


从godaddy的SSL证书获取pfx文件。详细信息以备不时之需。

.p7b文件也不包含私钥。经过进一步研究,你是对的。我以前没有处理过这些特定的文件,所以我只是假设它在从.cef到.pfx的翻译过程中丢失了。我将编辑以澄清。
var cert = new X509Certificate2(@"certpath", "
var bytes = cert.Export(X509ContentType.Pfx, "password");
File.WriteAllBytes(@"certpath\cert.pfx", bytes);