问题描述通过本地生成的自签名证书导入到Azure Key Vault Certificate报错 。
错误信息
the specified PEM X.509 certificate content can not be read. Please check if certificate is in valid PEM format. Accepted formats: PEM content or Base64 encoded PEM content.
【【Azure 环境】把OpenSSL生产的自签名证书导入到Azure Key Vault Certificate中报错】或是
Private key is not specified in the specified X.509 PEM certificate content. Please specify private key in the X.509 PEM certificate content.
错误截图
文章插图
问题解答在错误描述中,指出了上传的PEM证书内容错误 , 根据官方文档介绍,PEM所支持的格式为
-----BEGIN CERTIFICATE----- -----END CERTIFICATE----------BEGIN PRIVATE KEY----- -----END PRIVATE KEY-----说明一:导入证书时,需要确保密钥包含在文件中 。如果你以另一种格式单独存储私钥,则需将该私钥与证书组合在一起 。某些证书颁发机构 (CA) 提供其他格式的证书 。因此,在导入证书之前,请确保该证书为 PEM 或 PFX 文件格式,并且密钥使用 Rivest-Shamir-Adleman (RSA) 或椭圆曲线加密 (ECC) 方式的加密 。
说明二:Azure Key Vault 支持 .pem 和 .pfx 证书文件(用于将证书导入到 Key Vault 中) 。对于 PEM 文件格式,我们支持以下导入类型 。单个 PEM 编码的证书,以及一个包含以下内容的 PKCS#8 编码和解密的密钥
-----BEGIN CERTIFICATE----- -----END CERTIFICATE-----
-----BEGIN PRIVATE KEY----- -----END PRIVATE KEY-----
导入证书时,需要确保该密钥包含在文件本身中 。如果让私钥单独采用另一格式,则需将私钥与证书组合在一起 。某些证书颁发机构提供不同格式的证书,因此在导入证书之前,请确保证书采用 .pem 或 .pfx 格式 。
根据提示 , 在检查导入证书的内容中发现编码格式不一致 。一开始使用的Private Key格式为 “ -----BEGIN RSA PRIVATE KEY----- ” , 而不是满足要求的“ -----BEGIN PRIVATE KEY----- ” 。所以需要对Private Key的文件进行格式转换 。
第一步:转换Private Key的格式为
openssl pkcs8 -topk8 -inform PEM -in testpkcs1.pem -passin pass:Password@123 -outform pem -nocrypt -out pkcs8.pem第二步:根据Private Key生成Public Key证书
openssl req -new -x509 -key pkcs8.pem -out certpk8.pem -passin pass:Password@123 -days 3650第三步:根据Key Vault的要求,合并Public Key 和Private Key
//Linuxcat certpk8.pem pkcs8.pem > importpk8.pem//Windwostype certpk8.pem pkcs8.pem > importpk8.pem最后,在Azure Key Vault中导入 importpk8.pem 证书,并输入正确的密码 。导入自定义证书成功 。
文章插图
文章插图
附录一:附上OpenSSL生成 .pfx 证书的指令, 生成的 Local.pfx 可以直接导入Key Vault中openssl.exe req -x509 -nodes -sha256 -days 3650 -subj "/CN=Local" -newkey rsa:2048 -keyout Local.key -out Local.crtopenssl.exe pkcs12 -export -in Local.crt -inkey Local.key -CSP "Microsoft Enhanced RSA and AES Cryptographic Provider" -out Local.pfx附录二:PEM 和 PFX 证书内容的对比
文章插图
Key Vault Certificate要求上传PEM的格式为:参考资料Azure Key Vault 支持的导入格式 : https://docs.azure.cn/zh-cn/key-vault/certificates/certificate-scenarios#formats-of-import-we-support
-----BEGIN CERTIFICATE----- -----END CERTIFICATE-----
-----BEGIN PRIVATE KEY----- -----END PRIVATE KEY-----
How can I resolve a "Bad parameter" error? What are the supported certificate formats for importing to Key Vault? :https://docs.azure.cn/zh-cn/key-vault/certificates/faq#----------------------------key-vault-
推荐阅读
- 常用类.String类
- cf如何跳上高箱子(cf开什么箱子赚cf点)
- macos monterey描述文件下载_macos monterey描述文件下载地址
- 浏览器怎样清除缓存(浏览器历史清空了怎么恢复)
- 我的世界豹猫怎么驯服,为什么给豹猫喂鱼之后不变成猫
- 支付宝蚂蚁庄园每日答题答案
- 原神90级提纳里毕业面板数值怎么样
- 华硕飞行堡垒9怎么样_华硕飞行堡垒9值得买吗
- Vivado_8位流水灯
- 原神3.0柯莱命座强度如何