FindByThumbprint - 证书存在但未找到

时间:2013-09-02 04:36:25

标签: c# azure ssl-certificate

我正在尝试将证书添加到Web请求以连接到Azure服务。

我的代码如下所示:

string certThumbprint = "‎‎thumbprint";
X509Store certStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
X509Certificate2Collection certCollection = certStore.Certificates.Find(
     X509FindType.FindByThumbprint, certThumbprint, false);

现在我可以确认证书确实存在且指纹正确。但是certCollection空了。

有什么想法吗?

更新:这是我打开证书商店的方式

certStore.Open(OpenFlags.ReadOnly);

2 个答案:

答案 0 :(得分:17)

在指纹的最开始,您可能有一两个隐藏的角色。从MMC中的证书管理器复制指纹之前,我多次犯过这个错误。以下是有关此问题的详细信息的链接。 http://support.microsoft.com/kb/2023835

答案 1 :(得分:0)

我今天也遇到了同样的问题,虽然指纹前后都有隐藏的字符,但是如果您的调试在其他用户下运行,则StoreLocation.CurrentUser与在Windows中打开的一个。

我在本地的Service Fabric中运行此问题