Certificate 使用Azure KeyVault机密进行客户端身份验证:PFX->;证书 PFX已上载到AzureKeyVault,并通过GetSecretAsync azure调用成功获取 从pfx导入证书。现在,此证书用于客户端身份验证

Certificate 使用Azure KeyVault机密进行客户端身份验证:PFX->;证书 PFX已上载到AzureKeyVault,并通过GetSecretAsync azure调用成功获取 从pfx导入证书。现在,此证书用于客户端身份验证,certificate,client,azure-keyvault,Certificate,Client,Azure Keyvault,问题: 在这种情况下,私钥在机器中不可用,那么客户端身份验证如何工作 获取pfx并导入到证书的参考代码: secretBundle = await kvClientProvider.GetSecretAsync(secretUri, timeoutCancellation.Token).ConfigureAwait(false); if (0 == string.CompareOrdinal(secretBundle.ContentType, CertificateContentType.

问题: 在这种情况下,私钥在机器中不可用,那么客户端身份验证如何工作

获取pfx并导入到证书的参考代码:

secretBundle = await kvClientProvider.GetSecretAsync(secretUri, timeoutCancellation.Token).ConfigureAwait(false);
if (0 == string.CompareOrdinal(secretBundle.ContentType, 
  CertificateContentType.Pfx))
 { 
    var exportedCertCollection = new X509Certificate2Collection();
    exportedCertCollection.Import(Convert.FromBase64String(secretBundle.Value));
    var cert = exportedCertCollection.Cast<X509Certificate2>().Single(sc => sc.HasPrivateKey);    
    return cert;
  }
secretBundle=await kvClientProvider.GetSecretAsync(secretUri,timeoutCancellation.Token)。ConfigureAwait(false);
如果(0==string.CompareOrdinal(secretBundle.ContentType,
CertificateContentType.Pfx)
{ 
var exportedCertCollection=new X509Certificate2Collection();
exportedCertCollection.Import(Convert.FromBase64String(secretBundle.Value));
var cert=exportedCertCollection.Cast().Single(sc=>sc.HasPrivateKey);
返回证书;
}

当PFX作为机密上传到保险库时,它是否有私钥?当您在计算机中说“私钥不可用”时,这是因为密钥库吗?如果此处的代码有效,则它会找到一个证书,该证书的
HasPrivateKey
为true。PFX格式通常仅在传输私钥和证书时使用。所以我不确定问题是什么?