Udostępnij za pośrednictwem


Konfigurowanie uwierzytelniania entra firmy Microsoft dla klastra usługi Azure Red Hat OpenShift 4 (portal)

Jeśli zdecydujesz się zainstalować interfejs wiersza polecenia i korzystać z niego lokalnie, ten samouczek będzie wymagał interfejsu wiersza polecenia platformy Azure w wersji 2.6.0 lub nowszej. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Zanim rozpoczniesz

Skonstruuj adres URL wywołania zwrotnego OAuth klastra i zanotuj go. Pamiętaj, aby zastąpić ciąg aro-rg nazwą grupy zasobów i klastrem aro-cluster nazwą klastra.

Uwaga

Sekcja AAD w adresie URL wywołania zwrotnego OAuth powinna być zgodna z nazwą dostawcy tożsamości OAuth, którą skonfigurujesz później.

domain=$(az aro show -g aro-rg -n aro-cluster --query clusterProfile.domain -o tsv)
location=$(az aro show -g aro-rg -n aro-cluster --query location -o tsv)
echo "OAuth callback URL: https://oauth-openshift.apps.$domain.$location.aroapp.io/oauth2callback/AAD"

Tworzenie aplikacji Firmy Microsoft Entra na potrzeby uwierzytelniania

Zaloguj się do witryny Azure Portal i przejdź do bloku Rejestracje aplikacji, a następnie kliknij pozycję Nowa rejestracja, aby utworzyć nową aplikację.

Podaj nazwę aplikacji, na przykład aro-azuread-auth, i wypełnij identyfikator URI przekierowania przy użyciu wartości adresu URL wywołania zwrotnego OAuth pobranego wcześniej.

New application registration

Przejdź do pozycji Certyfikaty i wpisy tajne , a następnie kliknij pozycję Nowy klucz tajny klienta i wypełnij szczegóły. Zanotuj wartość klucza, ponieważ będzie ona używana w późniejszym etapie. Nie będzie można pobrać go ponownie.

Create a secret

Przejdź do obszaru Przegląd i zanotuj identyfikator aplikacji (klienta) i identyfikator katalogu (dzierżawy). Będą one potrzebne na późniejszym etapie.

Retrieve Application (client) and Directory (tenant) IDs

Konfigurowanie opcjonalnych oświadczeń

Deweloperzy aplikacji mogą używać opcjonalnych oświadczeń w swoich aplikacjach firmy Microsoft Entra, aby określić, które oświadczenia chcą w tokenach wysyłanych do aplikacji.

Za pomocą opcjonalnych oświadczeń można:

  • Wybierać dodatkowe oświadczenia, które mają być dołączane do tokenów dla aplikacji.
  • Zmień zachowanie niektórych oświadczeń zwracanych przez identyfikator Entra firmy Microsoft w tokenach.
  • Dodawać oświadczenia niestandardowe dla aplikacji i uzyskiwać do nich dostęp.

Skonfigurujemy usługę OpenShift, aby używać email oświadczenia i wracać do upn ustawienia preferowanej nazwy użytkownika, dodając upn element jako część tokenu identyfikatora zwróconego przez identyfikator Entra firmy Microsoft.

Przejdź do pozycji Konfiguracja tokenu i kliknij pozycję Dodaj opcjonalne oświadczenie. Wybierz pozycję Identyfikator , a następnie sprawdź adres e-mail i oświadczenia upn .

Screenshot that shows the email and upn claims that were added.

Przypisywanie użytkowników i grup do klastra (opcjonalnie)

Aplikacje zarejestrowane w dzierżawie usługi Microsoft Entra są domyślnie dostępne dla wszystkich użytkowników dzierżawy, którzy pomyślnie się uwierzytelniają. Identyfikator entra firmy Microsoft umożliwia administratorom dzierżawy i deweloperom ograniczenie aplikacji do określonego zestawu użytkowników lub grup zabezpieczeń w dzierżawie.

Postępuj zgodnie z instrukcjami w dokumentacji firmy Microsoft Entra, aby przypisać użytkowników i grupy do aplikacji.

Konfigurowanie uwierzytelniania OpenShift OpenID

kubeadmin Pobierz poświadczenia. Uruchom następujące polecenie, aby znaleźć hasło użytkownika kubeadmin .

az aro list-credentials \
  --name aro-cluster \
  --resource-group aro-rg

Poniższe przykładowe dane wyjściowe pokazują, że hasło będzie znajdować się w pliku kubeadminPassword.

{
  "kubeadminPassword": "<generated password>",
  "kubeadminUsername": "kubeadmin"
}

Adres URL konsoli klastra można znaleźć, uruchamiając następujące polecenie, które będzie wyglądać następująco: https://console-openshift-console.apps.<random>.<region>.aroapp.io/

 az aro show \
    --name aro-cluster \
    --resource-group aro-rg \
    --query "consoleProfile.url" -o tsv

Uruchom adres URL konsoli w przeglądarce i zaloguj się przy użyciu kubeadmin poświadczeń.

Przejdź do Administracja istration, kliknij pozycję Klaster Ustawienia, a następnie wybierz kartę Konfiguracja. Przewiń do pozycji OAuth.

Przewiń w dół, aby wybrać pozycję Dodaj w obszarze Dostawcy tożsamości i wybierz pozycję OpenID Połączenie. Select OpenID Connect from the Identity Providers dropdown

Wprowadź nazwę jako Identyfikator entra firmy Microsoft, identyfikator klienta jako identyfikator aplikacji i klucz tajny klienta. Adres URL wystawcy jest sformatowany w następujący sposób: https://login.microsoftonline.com/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/v2.0. Zastąp symbol zastępczy identyfikatorem dzierżawy pobranym wcześniej.

Fill in OAuth details

Przewiń w dół do sekcji Oświadczenia i zaktualizuj preferowaną nazwę użytkownika , aby użyć wartości z oświadczenia upn .

Fill in claims details

Weryfikowanie logowania za pomocą identyfikatora Entra firmy Microsoft

Jeśli teraz wylogujesz się z konsoli internetowej OpenShift i spróbujesz zalogować się ponownie, zostanie wyświetlona nowa opcja logowania przy użyciu identyfikatora Entra firmy Microsoft. Może być konieczne odczekenie kilku minut.

Login screen with Microsoft Entra option

Uwaga

Jeśli wystąpi błąd taki jak "AADSTS50011: Identyfikator URI https://oauth-openshift.apps.xxxxxxxxxx.xxxxxxx.aroapp.io/oauth2callback/xxxx przekierowania określony w żądaniu nie jest zgodny ze skonfigurowanymi identyfikatorami URI przekierowania", możesz postępować zgodnie z przewodnikiem rozwiązywania problemów logowaniem do usługi Azure AD (OIDC), gdy identyfikator URI przekierowania nie został poprawnie ustawiony, aby rozwiązać ten problem.