多年来,我一直能够使用this Stack Overflow answer中的OpenSSL创建方法上传新的pfx文件,以便在Azure应用服务上进行SSL绑定:
openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt
但是,现在执行相同的操作会出现以下错误:
至少有一个证书无效(证书验证失败,因为无法加载它。)
有什么方法可以解决这个问题?
多年来,我一直能够使用this Stack Overflow answer中的OpenSSL创建方法上传新的pfx文件,以便在Azure应用服务上进行SSL绑定:
openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt
但是,现在执行相同的操作会出现以下错误:
至少有一个证书无效(证书验证失败,因为无法加载它。)
有什么方法可以解决这个问题?
2条答案
按热度按时间8wtpewkr1#
应用服务私有证书要求
应用程序服务专用证书必须满足以下要求:
选项1:在OpenSSL 3+中使用传统提供程序
OpenSSL 3+不再使用DES加密作为默认加密。原始命令需要附加
-legacy
和-provider-path
(legacy.dll
的路径)参数:选项2:让Windows重新加密文件
如果由于某种原因,您的OpenSSL安装不包含旧版提供程序:
打开PowerShell并运行以下命令,将
-FilePath
替换为非工作pfx文件的路径,并将password-String
参数替换为相应的密码:成功的输出如下所示:
使用此指纹将证书导出到新的pfx文件,替换
-Cert
、-FilePath
和密码-String
参数:Azure现在应该能够验证新的pfx文件输出。
gojuced72#
如果特定错误为
添加私钥证书时出错。至少有一个证书无效(证书验证失败,因为无法加载它)
如果您使用OpenSSL中的以下脚本来生成
如果这就是问题所在,那么......
当您运行pfx生成脚本时,OpenSSL 3会生成较长的证书序列号。我建议从门户(https://slproweb.com/products/Win32OpenSSL.html)下载OpenSSL 1,这将有助于生成Azure pfx导入工具将接受的较短证书序列号
参考-https://learn.microsoft.com/en-us/answers/questions/192112/error-message-occurs-when-trying-to-upload-pfx-cer.html