Client-Authentifizierung über X509-Zertifikate in asp.net
Habe ich eine asp.net Anwendung und ich brauche, um Benutzer zu authentifizieren mittels X509-Zertifikaten. Das ist, muss der Benutzer installieren Sie ein Zertifikat von mir, so dass er durchsuchen Sie meine website und ich kann erkennen, welche Benutzer, die mit diesem Zertifikat.
Habe ich bereits konfiguriert, SSL auf IIS, aber es ist nicht das, was ich bin auf der Suche für jetzt, und ich weiß nicht, wo zu beginnen.
Wie kann ich erreichen, das in asp.net c#?
InformationsquelleAutor der Frage enb081 | 2013-02-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zum erstellen einer sicheren Authentifizierungsmethode Sie verwenden würden, sowohl client-Zertifikate und Benutzername /Passwort. Der Grund dafür ist, dass ein Zertifikat ist etwas, das gestohlen werden kann (kopiert), aber ein Passwort ist etwas, das ist bekannt, nur durch die person. Eine alternative könnte sein, ein Zertifikat auf eine smartcard, durch eine PIN geschützt.
Hilfe von client-Zertifikaten in ASP.NET Anwendungen müssen Sie Folgendes tun:
Schritt 1: In IIS Manager, öffnen Sie Ihre Anwendung oder Website, wählen Sie die SSL-Einstellungen und wählen Sie SSL Erforderlich und Erfordern Client-Zertifikat.
Nun, wenn der Benutzer öffnet die Webseite, der browser fordert ihn auf, wählen Sie ein client-Zertifikat verwendet wird, in der Mitteilung.
Wichtig An diesem Punkt haben Sie, um sicherzustellen, dass das Zertifikat ausgestellt wird, von jemandem, den Sie Vertrauen (da kann jeder erstellen Sie Ihre eigenen self-signed Zertifikate).
Schritt 2: Hinzufügen eines configuration item (entweder web.config, Datenbank, etc.). In dieser Liste sollten Sie die Fingerabdrücke des gesamten CA (certificate authority) - Kette für Ihre client-Zertifikate.
Schritt 3: Schaffen einen klassischen username /Passwort-login-Seite. Überprüfen Sie den Benutzernamen/Passwort.
Schritt 4: Fügen Sie den folgenden code, um Ihre login-Seite:
Nur, wenn beide das Passwort und das Zertifikat überprüft wurde, sollte der Benutzer darf im system.
InformationsquelleAutor der Antwort Knaģis
Vorausgesetzt, Sie haben IIS 7.0 oder höher, können Sie konfigurieren Clientzertifikatzuordnung-Authentifizierung
Mithilfe Von Active Directory (Extrem leicht, lässt der mapping-Arbeit der AD-server)
Oder mit IIS (Mehr erforderliche Konfiguration in IIS, benötigt Zugriff auf das client-Zertifikat, funktioniert aber standalone, keine Rundfahrten, um die ANZEIGE). In diesem Fall geben Sie (eine oder mehrere) Benutzer-Anmeldeinformationen und
Konfiguration (viele zu einem):
(Beispiel-Konfiguration ziemlich schamlos kopiert von den Proben auf der iis.net Dokumentation-Seiten, die sind Recht aufwendig.)
Oder Sie können die Anwendung so konfigurieren die Verwendung der anspruchsbasierten Authentifizierung mit einem Security Token Service (STS), die authentifiziert clients auf Basis von client-Zertifikaten. ADFS 2.0 kann tun, diese Rolle, oder wenn es nicht verfügbar ist, kann man sich an der Thinktecture Identity Server.
InformationsquelleAutor der Antwort flup