Der Browser fordert nicht zur Eingabe eines Client-Zertifikats auf

Hintergrund:

Ich aktualisiere eine interne Anwendung auf einen zweistufigen Authentifizierungsprozess. Ich möchte einen Client-Zertifikat-Authentifizierungsprozess (über eine Smartcard) über ein herkömmliches Benutzername / Passwort-Formular hinzufügen. Die Anwendung ist in C # geschrieben, wird auf IIS7 gehostet und richtet sich an Chrome und IE8.

Problem:

Ich habe Probleme damit, dass die Anwendung den Benutzer zur Eingabe eines Client-Zertifikats auffordert. Ich habe die Anwendung mit Hilfe von Fiddler getestet. Wenn ich ein Testclient-Zertifikat im Benutzerverzeichnis von Fiddler (C: \ Dokumente und Einstellungen \ USER \ Eigene Dateien \ Fiddler2) gespeichert habe, funktioniert die Anwendung wie erwartet. Ich werde aufgefordert, eine PIN-Nummer einzugeben, die die Smartcard schützt, und bei korrekter Eingabe zum Anmeldeformular weitergeleitet. Wenn ich Fiddler schließe, gibt die Anwendung stattdessen einen 403 Forbidden-Fehler aus (da Fiddler nicht mehr ausgeführt wird und auf sein Zertifikat zeigt). Was ich nicht herausfinden konnte, ist, warum die Anwendung normalerweise kein Zertifikat anfordert.

Aktuelles Server-Setup:

Selbstsigniertes Zertifikat wurde erstellt443 Bindung zeigt auf selbstsigniertes ZertifikatAnonyme Authentifizierung ist aktiviertDas selbstsignierte Zertifikat wurde sowohl der vertrauenswürdigen Stammzertifizierungsstelle als auch der Zwischenzertifizierungsstelle hinzugefügt (ich habe gelesen, dass eine andere Person es in beiden und nicht nur in der vertrauenswürdigen Stammzertifizierungsstelle hatte und dass das Problem behoben wurde, obwohl beide Einstellungen für uns nicht funktioniert haben).Ich habe den Rest der Zertifikate in der vertrauenswürdigen Stammzertifizierungsstelle gelöscht, die ich nicht benötigte (ich habe an anderer Stelle gelesen, dass zu viele Zertifikate dazu führen würden, dass SSL erstickt).

Ich habe keine Ideen mehr, es anders zu versuchen, als auf einem anderen Server von vorne zu beginnen. Weiß jemand, was das Problem sein könnte? Dies scheint ziemlich einfach zu sein und ich vermisse etwas Nebensächliches. Alle Ideen sind willkommen.

Aktualisieren:

Nachdem ich heute mehr Zeit mit diesem Problem verbracht habe, bin ich der festen Überzeugung, dass es damit zusammenhängt, dass IIS7 nicht richtig konfiguriert wurde (ich habe es ursprünglich nicht eingerichtet). Ich glaube, das liegt daran, dass ich die Ablaufverfolgung für fehlgeschlagene Anforderungen aktiviert, die nachfolgenden XML-Dateien überprüft und festgestellt habe, dass ein 500-Fehler ausgelöst wurde.

Chrome gibt die Meldung "Zugriff auf die Webseite wurde verweigert" und nicht "403 - Verboten: Zugriff verweigert" aus. Ich weiß nicht, ob das hilft. Ich weiß, dass die Site wie vorgesehen funktioniert, wenn ich keine erforderlichen Zertifikate erstelle. Wenn ein Zertifikat erforderlich ist, schlägt es fehl.

Der Anwendungspool ist auf .Net 4.0 | eingestellt Classic | Netzwerkdienst.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage