Forefront TMG 2010 – część 16 – Uwierzytelnianie certyfikatem oraz wykorzystanie weryfikatora LDAP

Udostępnij na: Facebook

Autor: Jacek Światowiak

Opublikowano: 2012-03-22

W poprzedniej części cyklu omówiono uwierzytelnianie, realizowane przez TMG metodami BASIC/WDigest/Windows Integrated/Form Based (weryfikowane w Active Directory). W tym artykule wyjaśnimy zagadnienie uwierzytelniania, bazującego na certyfikatach, oraz wykorzystania weryfikatora LDAP.

Wstęp

Za mechanizm uwierzytelniania w serwerze TMG 2010 odpowiada listener. Omówienia wymaga metoda bazująca na certyfikacie klienta SSL Client Certificate Authentication. Na wstępie należy założyć, iż klient posiada certyfikat, narzucony przy procesie uwierzytelniania.

****Rys. 1.****Certyfikat wymagany przy procesie uwierzytelniania.**

Użytkownik musi posiadać certyfikat w magazynie certyfikatów konta użytkownika na stacji roboczej, aby móc się uwierzytelnić przy jego pomocy (Rys. 1.). Certyfikat tego typu może być również przechowywany na smart karcie. Nie ma to znaczenia dla procesu uwierzytelniania. Ważne jest, aby w przeznaczeniu certyfikatu zawarta była opcja: Udowadnia Twoją tożsamość zdalnemu komputerowi (inaczej Client Authentication).

Na Rys. 2. zaprezentowano konfigurację zakładki Authentication listenera przy uwierzytelnianiu certyfikatem.

****Rys. 2.****Opcje związane z uwierzytelnianiem bazującym na certyfikacie.**

Weryfikatorem, bazującym przy uwierzytelnianiu na certyfikatach, może być wyłącznie Active Directory (Rys. 2.). Oznacza to, że TMG 2010 musi być członkiem domeny Active Directory.

Bardziej zaawansowane opcje uwierzytelniania, w tym uwierzytelniania certyfikatem, dostępne są pod przyciskiem Advanced… Wygląd okna Advanced Authentication Options prezentuje Rys. 3.

****Rys. 3.****Opcje zaawansowane uwierzytelniania.**

Przy uwierzytelnianiu certyfikatem zaznaczamy obowiązkowo opcje:

  • Require all user to authenticate – wymagamy, aby cały ruch był uwierzytelniony,
  • Require SSL client certificate – wymagamy certyfikatu SSL klienta.

Trzecia opcja określa okres ważności uwierzytelniania zrealizowanego certyfikatem (domyślnie 5 minut).

Na zakładce Client Certificate Trust List, zilustrowanej na Rys. 4., określamy jednostki certyfikujące, które mogą wystawiać certyfikaty, wykorzystane przy uwierzytelnianiu przez TMG. Domyślnie, są to wszystkie certyfikaty zawarte w magazynie Trusted Root Certification Authority w serwerze TMG 2010. Na Rys. 4. wybrano certyfikat tylko jednej jednostki certyfikującej, której certyfikaty będą akceptowane przy uwierzytelnianiu TMG.

****Rys. 4.****Opcje zaawansowane uwierzytelniania  certyfikatem – zakładka Client Certificate Trust List.**

Na zakładce Client Certificate Restrictions (Rys. 5.) określamy, jakie dodatkowe kryteria musi spełnić certyfikat, aby mógł zostać zaakceptowany jako element uwierzytelniania. Żadne dodatkowe restrykcje nie są wprowadzane domyślnie.

****Rys. 5.****Opcje zaawansowane uwierzytelniania certyfikatem – zakładka Client Certificate Restrictions.**

Jego ograniczenia możemy zdefiniować jako:

  • Issuer – nazwę wystawcy certyfikatu,
  • Subject – nazwę podmiotu, dla którego wystawiono certyfikat,
  • Enhanced Key Usage – dodatkowe, wymagane przeznaczenie certyfikatu – tu podajemy identyfikatory OID, które muszą być zawarte w certyfikacie,
  • Extension – dodatkowe, wymagane rozszerzenia certyfikatu.

Na przykładzie przedstawionym na Rys. 6., jako restrykcje wybrano nazwę podmiotu, dla którego wystawiony jest certyfikat. W nazwie podmiotu zawarty musi być łańcuch znaków - kowalski.

*Rys. 6.*Przykładowe restrykcje wykorzystania certyfikatu.

Okno logowania w trakcie procesu uwierzytelniania certyfikatem zilustrowano na Rys. 7.

****Rys. 7.****Okno logowania podczas procesu uwierzytelniania certyfikatem.**

Jeżeli użytkownik ma tylko jeden certyfikat w magazynie, to można wyłączyć opcję wyświetlania certyfikatu [okno wyboru certyfikatu]. W opcjach zabezpieczeń przeglądarki internetowej dla danej strefy należy zaznaczyć opcję: Nie monituj o zaznaczenia certyfikatu klienta, gdy nie ma certyfikatów lub istnieje tylko jeden. Opcję zaprezentowano na Rys. 8.

Rys. 8. Zmiana opcji wyboru certyfikatu przez przeglądarkę internetową Internet Explorer.**

Jeżeli w danym momencie wystawimy certyfikat dla innej osoby, która w polu Subject nie zawiera łańcucha znaków Kowalski, np. dla użytkownika Piotr Malinowski, możemy spodziewać się komunikatu błędu, przedstawionego na Rys. 9., informującego o odrzuceniu próby uwierzytelnienia za pomocą certyfikatu.

****Rys. 9.****Komunikat błędu przy próbie uwierzytelnienia certyfikatem niespełniającym określonego kryterium.**

Metoda uwierzytelniania certyfikatem ma dodatkową funkcjonalność. Można zezwolić, w przypadku niepowodzenia uwierzytelnienia certyfikatem, na przełączenie się na uwierzytelnianie, bazujące na haśle [Basic lub/i Digest lub/i Integrated]. Wybór opcji pokazano na Rys. 10.

****Rys. 10.****Opcje fallback authentication przy uwierzytelnianiu certyfikatem.**

 

Wykorzystanie weryfikatora LDAP

Do tej pory, jako weryfikator wykorzystywana była usługa katalogowa Active Directory. Przy wyborze uwierzytelniania HTTP Authentication (tylko Basic) oraz przy uwierzytelnianiu typu Form Based można skorzystać z weryfikatora typu LDAP. Wybór weryfikatora LDAP ilustruje Rys. 11.

****Rys. 11.****Wybór weryfikatora LDAP.**

Na Rys. 12. zaprezentowane zostało okno wyboru innych weryfikatorów RADIUS lub LDAP. Żadne weryfikatory nie zostały wybrane i skonfigurowane domyślnie [niejawnie w przypadku środowiska, gdy TMG jest członkiem domeny, wykorzystywany jest weryfikator typu Active Directory].

****Rys. 12.****Okno definiowania weryfikatorów.**

W celu dodania weryfikatora typu LDAP klikamy w oknie (przedstawionym na Rys. 11.) w przycisk Add… Okno dodawania serwera LDAP pokazano w lewej części Rys. 13. Format logowania, definiowany jako login expression zaprezentowano w prawej części Rys. 13.

****Rys. 13.****Okno dodawania weryfikatora typu LDAP.**

Uwaga informacyjna

Active Directory jest w pełni funkcjonalnym serwerem LDAP, dlatego przykład wykorzystuje kontroler domeny jako serwer LDAP. Jeżeli TMG jest członkiem domeny, to wykorzysta własne poświadczenia celem dostępu do bazy LDAP. W przypadku pracy w grupie roboczej lub wykorzystania innego serwera LDAP, trzeba zdefiniować nazwę użytkownika i hasło podmiotu, który ma dostęp do bazy LDAP celem weryfikacji statusu konta i zmiany hasła. Opcje User name i Password znajdują się na dole okna (Rys. 14.).

****Rys. 14.****Okno dodawania parametrów zaawansowanych weryfikatora typu LDAP.**

Format podawania poświadczeń zaprezentowano na Rys. 15. Należy pamiętać, iż przy tego typu konfiguracji nie zadziałają poświadczenia w formacie:

  • sam login: jan.kowalski
  • format UPN: jan.kowalski@test.local

Rys. 15.Format podawania poświadczeń.

Konfigurację weryfikatorów można podejrzeć jeszcze na poziomie Firewall Policy | zakładka Tasks |sekcja Related Tasks | Configure Authentication Server Settings (Rys. 16.).

****Rys. 16.****Okno dodawania parametrów.**

Podsumowanie

W artykule omówione zostało zagadnienie uwierzytelniania certyfikatami oraz wykorzystania weryfikatora LDAP. W następnej część cyklu nauczymy się używać weryfikatora RADIUS.