从Azure云服务导出证书

时间:2014-01-17 11:44:29

标签: .net azure x509certificate

我已将证书上传到Azure。我也在机器上丢失了原始证书(哎呀!)。

现在我需要恢复从Azure云服务导出它的证书。

在云服务上下文中运行的此代码获取正确的证书:

var store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
store.Open(OpenFlags.OpenExistingOnly | OpenFlags.ReadOnly);

var certificate = store.Certificates
    .Cast<X509Certificate2>()
    .SingleOrDefault(c => string.Equals(c.Thumbprint, "<THUMBPRINT>", StringComparison.OrdinalIgnoreCase));

但是当我尝试导出证书(X509Certificate2.Export)时,它会引发异常:

  

System.Security.Cryptography.CryptographicException:密钥无法在指定状态下使用。

是否有可能将其导出?

1 个答案:

答案 0 :(得分:0)

在您的Web /辅助角色上启用远程桌面,连接到它,然后您可以使用Mimikatz恢复证书(包括私钥),即使它被标记为不可导出。< / p>

Mimikatz(指南是法语):http://blog.gentilkiwi.com/mimikatz/crypto#exportCertificates