ASP.net-Berechtigungen für den Stammzertifikatsspeicher

8

Ist es möglich, asp.net Leseberechtigung für den Zertifikatspeicher zu geben?

Wenn ja, wie?

Wenn nein ... muss ich die Berechtigung manuell pro Zertifikatsdatei festlegen?

Wenn ja, wo sind diese Dateien physisch auf der Festplatte?

    
JL. 13.08.2009, 11:48
quelle

3 Antworten

12

Im Allgemeinen erteilen Sie Berechtigungen für das A Zertifikat. Ich verwende eine Methode wie diese, um die benutzerdefinierten Cert- und Grant-Berechtigungen zu finden. Wenn Sie ein von einer öffentlichen Instanz wie Verisign, Thawte usw. ausgestelltes Zertifikat verwenden, ist dies wahrscheinlich unnötig.

%Vor%

... findet Zertifikate auf dem lokalen Computer im persönlichen Speicher für einen bestimmten Aussteller.

Hinweis: Wenn sich FindPrivateKey nicht auf Ihrem lokalen Computer befindet, Downloaden Sie die WCF-Beispiele einschließlich des FindPrivateKey-Tools unter Ссылка

FindPrivateKey gibt den Speicherort des privaten Schlüssels für das Zertifikat ähnlich wie

zurück %Vor%

Führen Sie die folgende Befehlszeile aus, um der Prozessidentität des ASP.NET/WCF-Diensts schreibgeschützte Zugriffsberechtigungen zuzuweisen

%Vor%

HINWEIS: Wenn Sie Microsoft Windows® XP ausführen, geben Sie die Zertifikatsberechtigungen für die ASPNET-Identität anstelle der NT-Autorität \ Netzwerkdienst-Identität, da der IIS-Prozess unter dem ASPNET-Konto in Windows XP ausgeführt wird.

Zertifikate können im MMC-Snap-In für Zertifikate angezeigt werden. Öffnen Sie MMC, wählen Sie Datei - & gt; Hinzufügen / Entfernen Snap-In, klicken Sie auf die Schaltfläche Hinzufügen und wählen Sie Zertifikate. Von hier aus müssen Sie das entsprechende Geschäft auswählen (normalerweise Computerkonto - Lokaler Computer für ASP.NET-Elemente), um es zu verwalten, und dann können Sie die Zertifikate anzeigen / verwalten.

Bitte sehen Sie sich die verschiedenen Befehlszeilenoptionen genau an und stellen Sie sicher, dass Sie genau wissen, was Zertifikate sind und wie sie funktionieren, bevor Sie Berechtigungen erteilen.

    
StingyJack 13.08.2009, 11:56
quelle
9

Das Netzwerkdienstkonto, unter dem asp.net standardmäßig ausgeführt wird, hat keinen Zugriff auf die persönlichen Zertifikate der lokalen Maschine. Gewähren Sie folgenden Zugriff:

Repost von Sohne @ forums.asp.net

  

Schritt 1 - wenn Sie es noch nicht haben   installiert - erhalten WinHttpCertCfg

     

Schritt 2 - wenn Sie bereits die   Zertifikat auf der Maschine installiert   und Sie müssen nur Zugriff gewähren   Netzwerkdienste:

     
    

WinHttpCertCfg.exe -g -c LOCAL_MACHINE \ ME -s "IssuedToName" - ein "NetworkService"

  
    
TomZ 24.05.2010 12:31
quelle
-7

Ich mag es nicht wirklich, meine eigenen Fragen zu beantworten, aber eine einfache Möglichkeit, diesen Fehler loszuwerden, besteht darin, dem Netzwerkdienst vollen Zugriff auf das Laufwerk c: \ zu geben und die Berechtigungen herabzusetzen.

Sie werden mich niederschießen, ich weiß, wie schlimm das ist - aber es funktioniert.

    
JL. 13.08.2009 18:23
quelle