Ich versuche ASP.Net Web-Anwendung zu entwickeln, um Smartcard-Authentifizierung zu akzeptieren. Ich habe eine Web-App erstellt und in IIS bereitgestellt. Das Stammzertifikat wird auf dem vertrauenswürdigen Stammverzeichnis der IIS-Maschine installiert, das von CA autorisiert wurde. Für diese Webanwendung habe ich Serverzertifikat hinzugefügt, SSL erforderlich festgelegt und auf Zertifikate akzeptieren festgelegt. Wenn der Client auf diese Webanwendung zugreift, fordert er das Clientzertifikat an, chrome gibt eine Eingabeaufforderung für das Clientzertifikat, die Smartcard wird auf dem Clientcomputer eingefügt und bei Eingabe der PIN gibt der Benutzer eine gültige PIN ein und kann die Homepage abrufen die Web-App. Till, das alles funktioniert wie erwartet, aber an dieser Stelle möchte ich das Client-Zertifikat lesen und diesen Client mit Zertifikatskette validieren. Basierend auf dem Client-Zertifikat möchte ich auch die Rollen für diesen Benutzer abrufen. Jedes Mal, wenn ich versuche, das Clientzertifikat zu lesen, kann ich das Zertifikat nicht abrufen. Im Folgenden finden Sie Code Smartcard-Zertifikate zu lesen:Können wir die Smartcard-Authentifizierung in der Client Server Architecture verwenden?
`
X509Store store = null;
store = new X509Store(StoreName.Root);
store.Open(OpenFlags.ReadOnly);
var certsAuthEnc = store.Certificates.Find(X509FindType.FindByKeyUsage, (int)CertificateType.DigitalSignature, false);
`
Hier wird store.Certificates.Count
als 0 kommt
Bitte helfen, wie ich Zertifikate auf Client-Seite lesen kann?
Vielen Dank für Ihre Hilfe, warum ich mich auf Root-Speicherort bezieht, ist mein Anmeldefenster auf der Serverseite, auf meinem IIS-Server sind Zertifikate auf Root-Speicherort installiert. Grundsätzlich, was ich suche, ist, in meiner ASP. Net Web App, wenn PIN validiert ist, sollte ich diese digitalen Signaturdaten erhalten, um die nächsten Schritte zu überprüfen, ob der Benutzer in aktuellen Zeitstempeln etc. gültig ist. Wie kann ich das bekommen digital signierte Daten, wenn der Benutzer eine PIN eingibt? –
Der Stammspeicher ist nur eine Liste von selbstsignierten Stammzertifikaten. Sie denken, dass der "lokale Computer" -Bereich nicht "Stammspeicher" ist. Wie ich bereits erwähnt habe, möchten Sie jedoch nicht auf die Liste der Vertrauensanker schauen, die die vom Kunden präsentierte Kette validieren soll. – rmhrisk