Ich kann nicht auf den privaten Schlüssel meines X509Certificate2 in Azure zugreifen

8

Ich habe mein X509Certificate in einer Datenbank gespeichert (in byte[] ), damit meine Anwendung das Zertifikat abrufen und damit meine JWTs signieren kann.

Mein x509Certificate wird von einer PFX-Datei übergeben, die ich auf meinem Computer erstellt habe. Jetzt befindet es sich jedoch in einer Datenbank als Bytefolge.

Meine Anwendung funktioniert lokal einwandfrei, wenn ich sie ausführe. Die Anwendung kann eine Instanz dieses X509Certificate2 korrekt erstellen und sie für meine Anforderungen verwenden. Das Problem tritt jedoch auf, wenn ich versuche, es in meiner Webanwendung azurewebsites zu verwenden.

Grundsätzlich kann ich nicht auf die PrivateKey-Instanzvariable der Zertifikate zugreifen, ich bekomme eine Ausnahme

%Vor%

Und ich stelle das Zertifikat erneut mit diesem

instanziieren %Vor%

Ich verwende ASPNET 5 rc1-update1. Ich habe auch versucht, dies auf einer anderen Maschine zu laufen, und es funktioniert gut, habe nur dieses Problem, wenn ich in Azure veröffentlichen. Und um noch etwas hinzuzufügen, Diese Anwendung funktionierte, als ich das gleiche Projekt ausführte, das mit der DNX-Version beta7 ausgeführt wurde

Jede Hilfe wird geschätzt.

    
Lutando 02.12.2015, 15:00
quelle

1 Antwort

6

Das Problem besteht darin, dass Azure Web Apps den Zugriff auf den privaten Schlüsselspeicher des Computers einschränkt, da es sich um eine gemeinsam genutzte Hosting-Umgebung handelt und Sie den Computer nicht vollständig besitzen. Als Workaround können Sie ein Cert laden. In diesem Blogbeitrag wird die bewährte Vorgehensweise beschrieben: Ссылка

Bitte beachten Sie, dass dies nur für die Basic-Ebene und darüber funktioniert (nicht für die Ebene Frei oder Freigegeben).

Dies kann auch wie folgt aus einer CER-Datei erfolgen. Es sollte jedoch beachtet werden, dass dies keine Best Practices sind, da Sie einen sicheren Berechtigungsnachweis mit Ihrem Code in einem unsicheren Format speichern.

%Vor%     
theadriangreen 02.12.2015, 20:05
quelle