【问题标题】:How to prevent Private Key export for imported Certificate如何防止导入证书的私钥导出
【发布时间】:2018-12-18 15:48:54
【问题描述】:

小问题:如何使导入的证书(pfx)不可导出

我们有一个要导入 Azure KeyVault 的证书 (pfx) 文件。但是,我们无法使此证书不可导出。在颁发策略/高级策略配置下有一个选项,您可以在其中将“可导出私钥”设置为“否”,但似乎不适用于导入的证书。

我们使用的代码是:

        var keyVaultClient = CreateKeyVaultClient();
        var name = "non-exportable-cert";

        var secret = await keyVaultClient.GetSecretAsync("azure-key-vault-url", name);

        var cert = new X509Certificate2(Convert.FromBase64String(secret.Value));

         // cert.HasPrivateKey = always True.

使用 Windows 证书存储时,我们必须明确将证书标记为可导出。 Azure Key Vault 中根本没有此选项。

当我们在 Key Vault 中生成证书时,此选项确实有效,这会导致 cert.HasPrivateKey 设置为 False。

不支持这种情况还是我们遗漏了什么?提前致谢!

【问题讨论】:

    标签: azure-keyvault


    【解决方案1】:

    将证书导入 Azure Key Vault 时,可以将 KeyProperties 中的 exportable 设置为 false,表示无法导出私钥。

    更多详情可以参考这个article

    【讨论】:

    • 链接已损坏。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    相关资源
    最近更新 更多