Runtime-Fehler beim Laden des Zertifikats in Azure Functions

Ich möchte eine Azure-Funktionsmethode (C # API Generic HTTP) erstellen, mit der eine Datei in eine Office365 Sharepoint-Dokumentbibliothek hochgeladen wird.

Da ich mit der OneDrive-API große Dateien hochladen kann (mithilfe des Daemon-Prozesses und der Zertifikatauthentifizierung), ist es mir gelungen, das Ziel mit einer C # -Konsolenanwendung zu erreichen.

Die Idee wäre jetzt, den Code in eine Azure-Funktion zu verschieben. Allerdings erhalte ich zur Laufzeit der Funktion beim Laden des pfx-Zertifikats einen Fehler.

public static async Task<bool> Run(HttpRequestMessage req, TraceWriter log)
{
   string certfile = System.IO.Path.Combine(Environment.ExpandEnvironmentVariable‌​s("%HOME%"), @"site\wwwroot\<functionname>\mykeyfile.pfx"); 

    X509Certificate2 cert = new X509Certificate2(certfile, "<myinsanepwd>");

    return true; //temporary 
}

Die Zeile X509Certificate2 cert = new X509Certificate2 (certfile, ""); löst eine Exception aus System.Security.Cryptography.CryptographicException: Das System kann die angegebene Datei nicht finden.

Das ist wirklich seltsam, weil die Datei im angegebenen Pfad existiert (ich habe dies mit File.Exists () in der Methode überprüft :)). Hat dieser Fehler etwas mit support.microsoft.com/en-us/kb/948154 zu tun? Wie kann ich das lösen?

it freundlichen Grüßen Je

Antworten auf die Frage(4)

Ihre Antwort auf die Frage