andrewb
andrewb

Reputation: 3095

FindByThumbprint - certificate exists but not found

I am trying to add a certificate to a web request to connect to Azure services.

My code looks like this:

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

Now I can confirm that the certificate does exist and the thumbprint is correct. However certCollection comes back empty.

Any ideas?

Update: here is how I open the cert store

certStore.Open(OpenFlags.ReadOnly);

Upvotes: 4

Views: 12212

Answers (3)

Peter P
Peter P

Reputation: 31

A safe way to get the certificate thumbprints of the Personal Certificates store is to use an elevated instance of PowerShell.

PS C:\> dir cert:LocalMachine\My | select Thumbprint, FriendlyName, Subject

Upvotes: 2

Lonefish
Lonefish

Reputation: 677

I encountered the same issue today, while it's possible that there are hidden characters before and after the thumbprint it's also possible that if your debugging runs under a different user, the StoreLocation.CurrentUser isn't the same Store as the one you open in Windows.

I had this issue running in Service Fabric on localhost

Upvotes: 0

Rick Rainey
Rick Rainey

Reputation: 11256

You probably have a hidden character or two at the very beginning of your thumbprint. I've made this mistake many times before when copying the thumbprint from the certificate manager in MMC. Here is a link for more information on this issue. http://support.microsoft.com/kb/2023835

Upvotes: 17

Related Questions