Ich habe eine Reihe von Strings und pfx-Zertifikaten, die ich in Azure Key vault speichern möchte, wo nur die Benutzer / Apps sie erhalten können. Es ist nicht schwer, eine Zeichenfolge als Secret zu speichern, aber wie kann ich ein Zertifikat so serialisieren, dass ich es als X509Certificate2 Objekt in C #?
Ich habe versucht, es als Schlüssel zu speichern. Hier ist der Azure Powershell-Code
%Vor%Aber als ich versucht habe, es mit GetKeyAsync zu bekommen > Methode, ich könnte es nicht benutzen.
Hier ist ein PowerShell-Skript für Sie. Ersetzen Sie den Dateipfad, das Passwort, den Tresornamen und den geheimen Namen.
%Vor%Das ist eine häufige Frage, also werden wir das aufpolieren und als Helfer veröffentlichen.
Das obige Skript streift das Passwort ab, da es keinen Wert hat, ein passwortgeschütztes PFX zu haben und dann das Passwort daneben zu speichern.
In der ursprünglichen Frage wurde gefragt, wie das gespeicherte PFX als X509Certificate2
-Objekt abgerufen werden kann. Unter Verwendung eines Base64-Prozesses, der dem von Sumedh Barde oben beschriebenen ähnlich ist (was den Vorteil hat, dass das Passwort entfernt wird), wird der folgende Code ein X509-Objekt zurückgeben. In einer echten Anwendung sollte KeyVaultClient
zwischengespeichert werden, wenn Sie mehrere Geheimnisse abrufen, und die einzelnen Geheimnisse sollten ebenfalls zwischengespeichert werden.
Hier ist das Skript zum Hochladen von pfx-Zertifikat in Python mit azur cli
%Vor%Abrufen des Inhalts der PFX-Datei in Python
%Vor%Tags und Links azure c# certificate x509certificate2 azure-keyvault