Definicja uwierzytelniania OpenID Connect

Definicja uwierzytelnienia przez OpenID Connect jest globalną metodą uwierzytelniania i nie jest przywiązywana do użytkownika. Zatem jeśli użytkownik nie ma ustawionych żadnych metod uwierzytelniania, to też może się uwierzytelniać korzystając z OpenID Connect w Access Gateway oraz w Panelu Admina.


Postępuj zgodnie z instrukcjami, aby skonfigurować metodę uwierzytelniania OpenID Connect:

  1. Wybierz Ustawienia > Uwierzytelnienie.
  2. Wybierz zakładkę OpenID Connect.
  3. Kliknij Dodaj OpenID Connect.
  4. Zaznacz opcję Włączone, aby globalnie włączyć uwierzytelnianie OpenID Connect.
  5. Podaj Nazwę (Azure, Okta lub inny dostawca tożsamości).
  6. Podaj Bind address.
../../_images/5-5-openid-connect-auth.png
  1. W sekcji Ogólne wprowadź URL konfiguracji.

Informacja

Ten URL jest specyficzny dla każdego dostawcy tożsamości i umożliwia jego identyfikację dla poprawnej konfiguracji. Przykład URL konfiguracji dla Google: https://accounts.google.com/.well-known/openid-configuration.

  1. Podaj Client IDClient secret. Te dane są dostępne po rejestracji na stronie wybranego dostawcy.

Informacja

Sprawdź rozdział Konfiguracja uwierzytelnienia OpenID Connect w Microsoft Entra (Azure) opisujący przykład konfiguracji uwierzytelniania OpenID z Microsoft Entra.

  1. Dodaj Mapowanie nazwy użytkownika oraz Mapowanie emaila. Te pola są przydatne w przypadku innej konwencji nazewnictwa użytkownika.

Informacja

Aby zapewnić poprawne uwierzytelnianie przy użyciu rozwiązania Okta, konieczne są szczególne konfiguracje mapowania w zależności od formatu nazwy użytkownika i obecności adresu email w konfiguracji użytkownika.

../../_images/5-5-mapping-okta.png
  1. Nazwa użytkownika zawiera adres email:

    Scenariusz: Jeśli pole Nazwa w konfiguracji użytkownika zawiera adres email (np. user1@fudosecurity.com) a pole Email w zakładce Dane użytkownika jest puste.

    Konfiguracja: Ustaw Mapowanie nazwy użytkownika na email. To zapewnia, że adres email w nazwie użytkownika jest poprawnie rozpoznawany i używany do celów uwierzytelnienia.

  2. Nazwa użytkownika z tekstem i wypełnione pole email:

    Scenariusz: Jeśli pole Nazwa w konfiguracji użytkownika zawiera dowolny tekst (np. Fudo_1, user1) a pole Email w zakładce Dane użytkownika zawiera faktyczny adres email (np. user1@fudosecurity.com).

    Konfiguracja: Ustaw Mapowanie emaila na email. Ta konfiguracja zapewnia, że adres email podany w polu Email jest używany do uwierzytelniania, nawet jeśli nazwa użytkownika jest ciągiem tekstowym bez emaila.

  1. Kliknij Zapisz.

Informacja

Algorytm ustalania tożsamości użytkownika jest następujący:

  1. Użytkownik jest początkowo identyfikowany za pomocą pola sub od dostawcy OpenID Connect (OIDC).
  2. Jeśli użytkownik nie został zidentyfikowany za pomocą pola sub, następnym krokiem jest sprawdzenie ustawienia autolink dla dostawcy OIDC. Jeśli to ustawienie jest niepoprawne, proces kończy się bez odnalezienia użytkownika. Jeśli ustawienie autolink jest poprawne, proces wyszukiwania jest kontynuowany.
  3. Jeśli zdefiniowano Mapowanie nazwy użytkownika, przeprowadzane jest wyszukiwanie odpowiadającego pola w danych JSON. Po zlokalizowaniu pola w danych, system następnie szuka użytkownika o tej nazwie.
  4. Jeśli Mapowanie nazwy użytkownika nie zostało zdefiniowane, pole nie zostało odalezione w danych lub użytkownik nie został odnaleziony po nazwie, kolejnym krokiem jest sprawdzenie, czy zdefiniowano Mapowanie email. Jeśli zostało zdefiniowane i istnieje w danych JSON, następnym krokiem jest próba zidentyfikowania użytkownika na podstawie tego adresu email.
  5. Jeśli ani Mapowanie nazwy użytkownika, ani Mapowanie email nie są zdefiniowane, system będzie starał się zidentyfikować użytkownika po jego nazwie lub adresie email. Jest to realizowane przez wyszukiwanie w danych pól upn lub unique_name w tej określonej kolejności.
  6. Gdy do identyfikacji użytkownika używane jest pole email, wymagane jest, aby w danych znajdowało się pole email_verified o wartości true.
  7. Ostatnim krokiem jest sprawdzenie, czy odnaleziony użytkownik ma już przechowywane pole sub, inne niż to otrzymane od dostawcy OIDC. Jeśli się nie zgadzają, proces kończy się niepowodzeniem.
  8. Otrzymane pole sub użytkownika jest przechowywane w bazie danych do przyszłego użytku.
  1. Zaloguj się przy użyciu zdefiniowanej metody uwierzytelniania:
../../_images/5-3-azure-okta-login.png

Tematy pokrewne: