Tło:przeglądarka nie skłoniło do certyfikatu klienta
Ja aktualizację wewnętrznego aplikacji do procesu uwierzytelniania dwuetapowego. Chcę dodać proces uwierzytelniania certyfikatu klienta (za pośrednictwem karty inteligentnej) na podstawie tradycyjnej nazwy użytkownika/hasła. Aplikacja jest napisana w języku C#, hostowana na IIS7 i kieruje na Chrome i IE8.
Problem:
Mam problemy z dotarciem do wniosku poprosi użytkownika o certyfikat klienta. Debugowałem aplikację przy pomocy Fiddlera. Kiedy mam certyfikat klienta testowego zapisany w katalogu użytkownika Fiddlera (C: \ Documents and Settings \ USER \ Moje dokumenty \ Fiddler2), aplikacja działa zgodnie z oczekiwaniami. Zostałem poproszony o podanie numeru PIN chroniącego kartę inteligentną, a po poprawnym wprowadzeniu do formularza logowania. Kiedy zamykam Skrzypek, aplikacja zgłasza błąd 403 Forbidden (ponieważ Fiddler nie działa i wskazuje na swój certyfikat). To, czego nie byłem w stanie wymyślić, to dlaczego aplikacja nie będzie zwykle pytać o certyfikat.
Obecna konfiguracja serwera:
- Własna Signed Certificate został stworzony
- 443 Wiązanie wskazuje na Jaźni podpisany certyfikat
- Anonymous Uwierzytelnianie jest Włączone
- Self Signed Certificate został dodany do obu zaufany główny urząd certyfikacji i pośredni urząd certyfikacji (czytałem, że inna osoba miała go w obu przypadkach, a nie tylko zaufany główny urząd certyfikacji, i że rozwiązał ich problem, chociaż żadna konfiguracja nie działała dla nas).
- Usunąłem pozostałe certyfikaty w zaufanym głównym urzędzie certyfikacji, których nie potrzebowałem (czytałem gdzie indziej, że zbyt duża liczba certyfikatów spowodowałaby, że SSL się dusi).
Brakuje mi pomysłów na wypróbowanie innych niż uruchamianie od zera na innym serwerze. Czy ktoś wie, co to może być problem? Wygląda na to, że powinno być dość proste i że brakuje mi czegoś nieznacznego. Wszelkie pomysły są mile widziane.
Aktualizacja:
Po spędzeniu więcej czasu z tym problemem dzisiaj jestem przekonany, że ma do czynienia z IIS7 nie jest poprawnie skonfigurowany (nie ustawić go pierwotnie). Myślę, że to dlatego, że włączono śledzenie nieudanych żądań, sprawdziłem generowane kolejne pliki xml i zobaczyłem, że został zgłoszony błąd 500.
Chrome wyświetla komunikat "Dostęp do strony nie został odrzucony" zamiast "403 - Zabroniono: Odmowa dostępu". Nie wiem, czy to pomaga. Wiem, że gdy nie będę wymagać certyfikatów, strona będzie działać zgodnie z przeznaczeniem. Wymaganie certyfikatu następuje w przypadku niepowodzenia.
Pula aplikacji jest ustawiona na .Net 4.0 | Klasyczny | Usługa sieciowa.
Nie jestem pewien, czy mogę pomóc, ale mam kilka pytań: 1) czy próbowałeś także IE lub FF? 2) Może chcieć powielić wyniki na innym serwerze. Widziałem zbyt wiele problemów, które pomogły/rozwiązały się w ten sposób - dałoby to również szansę na szybkie zapoznanie się ze sposobem konfiguracji witryny IIS7; 3) czy istnieje więcej rejestrowania klientów i/lub serwerów, które można spróbować uzyskać więcej informacji - prawdopodobnie więcej po stronie IIS7, wydaje się. – Lizz