Połącz z Microsoft Entra ID za pomocą OpenID Connect

FoxIDs można połączyć z Microsoft Entra ID przy użyciu OpenID Connect, aby uwierzytelniać użytkowników końcowych w tenancie Microsoft Entra ID.

Możesz podłączyć zarówno aplikację Microsoft Entra ID single tenant, jak i multitenant jako metodę uwierzytelniania w FoxIDs przy użyciu OpenID Connect. Bardziej złożony wariant to odczyt claimów z access tokenu. Jeśli skonfigurujesz App roles, zostaną zwrócone w claimie roles.

Logowanie Microsoft Entra ID możesz przetestować w przykładowej aplikacji online (dokumentacja przykładu), klikając Log in, a następnie Microsoft Entra ID. Zobacz konfigurację przykładu Microsoft Entra ID w FoxIDs Control: https://control.foxids.com/test-corp Uzyskaj dostęp do odczytu użytkownikiem reader@foxids.com i hasłem gEh#V6kSw, a następnie wybierz środowisko Production i kartę Authentication.

Skonfiguruj single tenant

Ten rozdział opisuje, jak skonfigurować połączenie Microsoft Entra ID single tenant z przepływem OpenID Connect Authorization Code i PKCE, który jest zalecanym przepływem OpenID Connect.

1 - Zacznij od utworzenia metody uwierzytelniania OpenID Connect w FoxIDs Control Client

  1. Dodaj nazwę
  2. Wybierz show advanced
  3. Wybierz wzorzec wiązania URL z tyldami

Read the redirect URLs

Teraz możesz odczytać Redirect URL i Front channel logout URL.

2 - Następnie przejdź do Azure Portal i utwórz aplikację Microsoft Entra ID

  1. Dodaj nazwę
  2. Wybierz single tenant
  3. (To aplikacja webowa) Dodaj Redirect URL metody uwierzytelniania FoxIDs
  4. Kliknij Register
  5. Skopiuj Application (client) ID
  6. Skopiuj Directory (tenant) ID
  7. Przejdź do karty Authentication i dodaj Front channel logout URL metody uwierzytelniania FoxIDs, kliknij save
  8. Przejdź do karty Certificates & secrets, kliknij New client secret i dodaj sekret
    • Opcjonalnie użyj certyfikatu klienta zamiast sekretu
  9. Skopiuj wartość client secret (nie secret ID)
  10. Przejdź do karty Token configuration i kliknij Add optional claims. Następnie wybierz ID (dodawanie claimów do tokenu ID) i zaznacz email, family_name, given_name, ipaddr, preferred_username, po czym kliknij Add dwa razy.

3 - Wróć do metody uwierzytelniania FoxIDs w FoxIDs Control Client

  1. Dodaj authority, czyli https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (np. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0)
  2. Dodaj client ID Microsoft Entra ID jako niestandardowy SP client ID
  3. Dodaj zakresy profile i email (opcjonalnie inne lub więcej zakresów)
  4. Dodaj wartość client secret Microsoft Entra ID jako client secret
    • Opcjonalnie wybierz show advanced, zmień metodę uwierzytelniania klienta na private key JWT i prześlij certyfikat klienta
  5. Wybierz używanie claimów z tokenu ID
  6. Dodaj claimy, które będą przekazywane z metody uwierzytelniania do rejestracji aplikacji, np. preferred_username, email, name, given_name, family_name, oid, ipaddr oraz ewentualnie claim access_token, aby przekazywać access token Microsoft Entra ID do rejestracji aplikacji.
  7. Wybierz No w Front channel logout session required
  8. Kliknij create

To wszystko, gotowe.

Możesz zobaczyć claimy zwracane przez aplikację Microsoft Entra ID w logu FoxIDs, zmieniając ustawienia logowania na logowanie claimów oraz opcjonalnie całej wiadomości, a następnie zdekodować otrzymane JWT.

Nowa metoda uwierzytelniania może zostać wybrana jako dozwolona metoda uwierzytelniania w rejestracji aplikacji. Rejestracja aplikacji może odczytywać claimy z metody uwierzytelniania. Można dodać claim access_token, aby uwzględnić access token Microsoft Entra ID jako claim w wystawianym access tokenie.

Skonfiguruj multitenant

Ten rozdział opisuje, jak skonfigurować połączenie Microsoft Entra ID multitenant z przepływem OpenID Connect Authorization Code i PKCE.

Konfiguracja multitenant nieco różni się od konfiguracji single tenant.

1 - Portal Microsoft Entra ID

  1. Podczas tworzenia aplikacji wybierz multitenant

2 - Metoda uwierzytelniania FoxIDs w FoxIDs Control Client

  1. Dodaj authority https://login.microsoftonline.com/common/v2.0
  2. Wybierz edit issuer
  3. Zmień issuer na https://login.microsoftonline.com/{Microsoft Entra ID tenant ID}/v2.0 (np. https://login.microsoftonline.com/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/v2.0), gdzie wstawiasz tenant ID Microsoft Entra ID. Możesz dodać wiele issuerów i w ten sposób ufać wielu tenantom Azure. Albo możesz użyć wildcard * bez niczego więcej, aby akceptować wszystkich issuerów; zaakceptowany issuer jest dodawany w claimie auth_method_issuer.

Odczyt claimów z access tokenu

Jeśli chcesz odczytywać claimy z access tokenu, musisz dodać dodatkową aplikację Microsoft Entra ID jako zasób (API). Pierwsza aplikacja Microsoft Entra ID jest klientem.

1 - W Azure Portal

  1. Utwórz aplikację Microsoft Entra ID dla zasobu
  2. Wystaw zakres z aplikacji zasobu i przyznaj aplikacji klienta zakres aplikacji zasobu

2 - Następnie przejdź do FoxIDs Control Client

  1. Wybierz show advanced
  2. Wybierz edit issuer
  3. Dodaj issuer access tokenu https://sts.windows.net/{Microsoft Entra ID tenant ID}/ (np. https://sts.windows.net/82B2EBAE-5864-4C9F-8F78-40CB172BC7E1/), gdzie wstawiasz tenant ID Microsoft Entra ID
  4. Dodaj zakres aplikacji zasobu jako zakres w kliencie metody uwierzytelniania FoxIDs
  5. Odczytuj claimy z access tokenu, nie wybierając używania claimów z tokenu ID

W tym przypadku access token jest wystawiony przez tego samego OP (IdP) i dlatego jest akceptowany.

App roles

Jeśli skonfigurujesz App roles w aplikacji Microsoft Entra ID w karcie App roles, role są zwracane w claimie roles w tokenie ID dla użytkowników przypisanych do roli.

Jeśli odczytujesz claimy z access tokenu, role muszą być zdefiniowane w aplikacji Microsoft Entra ID dla zasobu (API).

W FoxIDs Control Client

  1. Role są zwracane w claimie roles, które można zmienić na claim role (bez „s”) przez dodanie transformacji mapowania claimów. Wpisz role w New claim, ustaw action na replace claim i wpisz roles w Select claim
  2. Dodaj claim role do claimów, które będą przekazywane z metody uwierzytelniania do rejestracji aplikacji

Pamiętaj, aby dodać także claim role w rejestracji aplikacji, aby był wystawiany do aplikacji.

Twoja prywatność

Używamy plików cookie, aby poprawić korzystanie z naszych stron internetowych. Kliknij przycisk „Akceptuj wszystkie pliki cookie”, aby wyrazić zgodę na ich użycie. Aby zrezygnować z nieistotnych plików cookie, kliknij „Tylko niezbędne pliki cookie”.

Odwiedź naszą politykę prywatności, aby dowiedzieć się więcej