Matteo Bortolazzo
Matteo Bortolazzo

Reputation: 508

Azure web app "ERR: Cert with thumbprint: ...' not found in local machine cert store."

I'm trying to use an Apple push certificate in an Asp.NET Core 1.1 app but it cannot find any certificates.

I uploaded the cert and set WEBSITE_LOAD_CERTIFICATES to *(all).

The following code is what I use to get the certificate

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

      var certCollection = store.Certificates;
      var signingCert = certCollection.Find(X509FindType.FindByThumbprint, thumbprint, false);
      if (signingCert.Count == 0)
      {
          throw new FileNotFoundException(string.Format("Cert with thumbprint: '{0}' not found in local machine cert store.", thumbprint));
      }
      return signingCert[0];
 }

What am I missing?

Upvotes: 0

Views: 852

Answers (1)

Fei Han
Fei Han

Reputation: 27793

It seems that you'd like to upload your certificate to the certificates collection in Azure Websites and consume it in your web application from your site’s personal certificate store. I'm upload my certificate and use the following code to consume it in Asp.NET Core 1.1 app, the code works for me.

X509Certificate2 retVal = null;

var thumbprint = "{cert_thumbprint}";
var store = new X509Store(StoreName.My, StoreLocation.CurrentUser);

store.Open(OpenFlags.ReadOnly);

var certCollection = store.Certificates;

var signingCert = certCollection.Find(X509FindType.FindByThumbprint, thumbprint, false);

if (signingCert.Count > 0)
{
    retVal = signingCert[0];
}

Remote debug the code and the code works fine on azure website

enter image description here

Upvotes: 1

Related Questions