
Konieczność konfigurowania m.in certyfikatów w magazynie, certyfikatów z SSL-em, praw odczytu klucza prywatnego, domen (w Windows Vista ponadto uprawnień do hostowania pod adresem o danej masce) powoduje, że uzyskiwanie tożsamości za pomocą karty może nie działać z różnych powodów. Do swoich przykładów MS porobił dość złożone skrypty konfiguracyjne, co trochę ratuje sprawę -:)
Korzystanie z kart zarządzanych wymaga również pewnego zakresu wiedzy i praktyki:
- karty wymagające karty osobistej: PPID nie jest zawsze ten sam, zależy od klucza publicznego bądź danych RP. Tak więc PPID należy odczytać na stronie legitymującej się takim certyfikatem jak wystawca tożsamości.
- karty wymagające certyfikatu X.509: certyfikat powinien być zainstalowany w gałęzi Current User/ Personal (jeśli nie wkładamy karty inteligentnej do czytnika)
- karty wymagające hasła - tu po prostu wpisujemy hasło
- karty wymagające Kerberosa - nic się nie podaje (MS w przykładowym STS-ie tego przypadku nie uwzględnia)
Do Cardspace nie ma zbyt wiele przykładów. Np. nie znalazłem przykładu MS z WCF i kartami zarządzanymi (wszyscy podają przykłady na WCF z kartami osobistymi i karty zarządzane ze stroną WWW). Próbowałem uzyskiwać token do serwisu WCF z przykładowego STS-a. Na blogu Martin'a Parry jest parę wskazówek. Niestety poza plikiem konfiguracyjnym serwisu kod projektu nie został tam udostępniony. W rozwiązaniu problemu posunąłem się jednak krok do przodu: STS parsuje token RST i generuje token RSTR. Autor bloga daje cenną wskazówkę: przykładowy STS akceptuje tylko klucze asymetryczne (w innym przypadku nie może sparsować przychodzącego tokenu, czego doświadczyłem na własnej skórze - ustaliłem to po zdebugowaniu STS-a). Jednak przy próbie wysłania przez STS tokenu do klienta, ten ostatni się wykrzacza. W logach klienta WCF można znaleźć info: At least one security token in the message could not be validated. Po wielu próbach skonfigurowania klienta WCF (przynajmniej na razie) poddałem się -:(( Jakby ktoś jednak znalazł gdzieś w Internecie działający przykład lub wiedział jak to skonfigurować, to proszę o kontakt
Brak komentarzy:
Prześlij komentarz