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.ExpandEnvironmentVariables("%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