如何从Azure KeyVault获取证书链

yrdbyhpb  于 2023-08-07  发布在  其他
关注(0)|答案(2)|浏览(115)

我上传了一个pfx文件到Azure Key Vault,它的链中有2个父证书。我可以通过调用KeyVaultClient.getCertificate(cert_id)来获取基本证书。

Certificate cert = new X509CertImpl(m_Client.getCertificate(m_CertId).cer());

字符串
问题是我需要整个证书链。有没有一种方法可以使用Java API来实现这一点?

68bkxrlz

68bkxrlz1#

我尝试了以下方法:

  • 将预先生成证书文件导入AKV(.PEM格式,包含2个证书和私钥。AKV要求存在私钥);
  • 通过Java API加载证书-->仅获得1个证书;
  • 通过Java API加载秘密-->获得2个证书和私钥;

这种行为可能取决于AKV设置(至少文档中说密钥可能被标记为可导出或不可导出)和证书格式。
这个微软链接对我很有用。

fquxozlt

fquxozlt2#

将证书上传到keyvault后,您将无法再访问私钥或证书链的任何部分。基本上,证书被分为密钥(不能从KV中检索)和证书。
如果您需要访问这些文件,则需要从编码的pfx文件中创建一个密码。即证书文件的Base64。如果您需要保证密钥的安全,您可以从附加了父证书的证书中创建一个KV密钥。即base64,并将其作为秘密保存到KV。

相关问题