I have a console app that is scheduled using Azure WebJobs. The execution always fails when attempting to read the private key of p12 certificate. Interestingly enough I can't catch the exception, I've had to use good old Console.WriteLine
to debug.
Here is my snippet of code:
var certificate = new X509Certificate2(data, "notasecret", X509KeyStorageFlags.Exportable);
ServiceAccountCredential credential = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer(serviceAccountEmail)
{
Scopes = new[] { BigqueryService.Scope.Bigquery }
}.FromCertificate(certificate));
Other posts have mention that the flags should be X509KeyStorageFlags.MachineKeySet
but unfortunately that causes an error in the Google API. It requires the X509KeyStorageFlags.Exportable
flag to be set.
Can anyone confirm that X509KeyStorageFlags.Exportable
is usable on Azure Websites and WebJobs?