Azure辅助角色:使用c#从证书存储区读取证书会删除私钥

时间:2015-08-08 08:59:07

标签: azure azure-worker-roles

我正在尝试使用C#从worker角色中读取证书。 但我最终得到了错误' System.Security.Cryptography.CryptographicException:keyset不存在'。看起来像.net代码在形成certstorecollection时删除了私钥。

以下是我使用的C#代码, X509Store certStore = new X509Store(StoreName.My,StoreLocation.LocalMachine);             certStore.Open(OpenFlags.ReadOnly);

        X509Certificate2Collection certCollection = certStore.Certificates.Find(X509FindType.FindByThumbprint, "MyThumbPrint", false);

        if (certCollection.Count != 0)
        {
            X509Certificate2 cert = certCollection[0];
            WebRequestHandler handler = new WebRequestHandler();
            handler.ClientCertificateOptions = ClientCertificateOption.Manual;
            handler.ClientCertificates.Add(cert);
            this.HttpClient = new HttpClient(handler);
        }

如果我遗漏任何保留钥匙的密码,请告诉我。

我们最早的帮助非常感谢。

提前致谢!

0 个答案:

没有答案