Bezproblemowe logowanie jednokrotne firmy Microsoft Entra: szczegółowe informacje techniczne
Ten artykuł zawiera szczegółowe informacje techniczne dotyczące działania funkcji bezproblemowego logowania jednokrotnego (bezproblemowego logowania jednokrotnego) firmy Microsoft.
Jak działa bezproblemowe logowanie jednokrotne?
Ta sekcja zawiera trzy części:
- Konfiguracja funkcji bezproblemowego logowania jednokrotnego.
- Jak transakcja logowania jednokrotnego użytkownika w przeglądarce internetowej działa z bezproblemowym logowaniem jednokrotnym.
- Jak transakcja logowania jednokrotnego użytkownika na natywnym kliencie działa z bezproblemowym logowaniem jednokrotnym.
Jak działa konfiguracja?
Bezproblemowe logowanie jednokrotne jest włączone przy użyciu programu Microsoft Entra Connect, jak pokazano tutaj. Podczas włączania tej funkcji są wykonywane następujące kroki:
- Konto komputera (
AZUREADSSOACC
) jest tworzone w lokalna usługa Active Directory (AD) w każdym lesie usługi AD synchronizowanym z identyfikatorem Entra firmy Microsoft (przy użyciu programu Microsoft Entra Connect). - Ponadto podczas procesu logowania w Microsoft Entra tworzonych jest wiele nazw głównych usług Kerberos (SPN).
- Klucz odszyfrowywania Kerberos konta komputera jest bezpiecznie udostępniany identyfikatorowi Entra firmy Microsoft. Jeśli istnieje wiele lasów usługi AD, każde konto komputera będzie miało własny unikatowy klucz odszyfrowywania Kerberos.
Ważne
Konto komputera AZUREADSSOACC
musi być silnie chronione ze względów bezpieczeństwa. Tylko administratorzy domeny powinni mieć możliwość zarządzania kontem komputera. Upewnij się, że delegowanie protokołu Kerberos na koncie komputera jest wyłączone i że żadne inne konto w usłudze Active Directory nie ma uprawnień delegowania na AZUREADSSOACC
koncie komputera. Przechowuj konto komputera w jednostce organizacyjnej, w której jest ono chronione przed przypadkowym usunięciem i dostępne tylko dla administratorów domeny. Klucz odszyfrowywania Kerberos na koncie komputera powinien być również traktowany jako poufny. Zdecydowanie zalecamy przerzucanie kluczaAZUREADSSOACC
odszyfrowywania Kerberos konta komputera co najmniej co 30 dni.
Ważne
Bezproblemowe logowanie jednokrotne obsługuje AES256_HMAC_SHA1
typy i AES128_HMAC_SHA1
RC4_HMAC_MD5
szyfrowania dla protokołu Kerberos. Zaleca się, aby typ szyfrowania dla AzureADSSOAcc$
konta był ustawiony na AES256_HMAC_SHA1
, lub jeden z typów AES a RC4 dla dodanych zabezpieczeń. Typ szyfrowania jest przechowywany w atrybucie msDS-SupportedEncryptionTypes
konta w usłudze Active Directory.
AzureADSSOAcc$
Jeśli typ szyfrowania konta jest ustawiony na RC4_HMAC_MD5
, i chcesz zmienić go na jeden z typów szyfrowania AES, upewnij się, że najpierw przerzucisz klucz AzureADSSOAcc$
odszyfrowywania Kerberos konta zgodnie z opisem w dokumencie FAQ w odpowiednim pytaniu, w przeciwnym razie bezproblemowe logowanie jednokrotne nie nastąpi.
Po zakończeniu konfigurowania bezproblemowe logowanie jednokrotne działa tak samo jak każde inne logowanie korzystające ze zintegrowanego uwierzytelniania systemu Windows (IWA).
Jak działa logowanie w przeglądarce internetowej przy użyciu bezproblemowego logowania jednokrotnego?
Przepływ logowania w przeglądarce internetowej wygląda następująco:
Użytkownik próbuje uzyskać dostęp do aplikacji internetowej (na przykład aplikacji Outlook Web App — https://outlook.office365.com/owa/) z urządzenia firmowego przyłączonego do domeny w sieci firmowej.
Jeśli użytkownik nie jest jeszcze zalogowany, zostanie przekierowany do strony logowania firmy Microsoft Entra.
Użytkownik wpisze nazwę użytkownika na stronie logowania firmy Microsoft Entra.
Uwaga
W przypadku niektórych aplikacji pominięto kroki 2 i 3.
Korzystając z języka JavaScript w tle, identyfikator Entra firmy Microsoft kwestionuje przeglądarkę za pośrednictwem odpowiedzi 401 Brak autoryzacji w celu udostępnienia biletu Protokołu Kerberos.
Przeglądarka z kolei żąda biletu z usługi Active Directory dla
AZUREADSSOACC
konta komputera (który reprezentuje identyfikator Entra firmy Microsoft).Usługa Active Directory lokalizuje konto komputera i zwraca bilet protokołu Kerberos do przeglądarki zaszyfrowanej przy użyciu wpisu tajnego konta komputera.
Przeglądarka przekazuje bilet protokołu Kerberos uzyskany z usługi Active Directory do identyfikatora Entra firmy Microsoft.
Identyfikator Entra firmy Microsoft odszyfrowuje bilet Protokołu Kerberos, który obejmuje tożsamość użytkownika zalogowanego na urządzeniu firmowym przy użyciu wcześniej udostępnionego klucza.
Po dokonaniu oceny identyfikator Entra firmy Microsoft zwraca token z powrotem do aplikacji lub prosi użytkownika o wykonanie dodatkowych dowodów, takich jak uwierzytelnianie wieloskładnikowe.
Jeśli logowanie użytkownika zakończy się pomyślnie, użytkownik będzie mógł uzyskać dostęp do aplikacji.
Na poniższym diagramie przedstawiono wszystkie wymagane składniki i kroki.
Bezproblemowe logowanie jednokrotne jest oportunistyczne. Oznacza to, że jeśli się nie powiedzie, proces logowania powraca do swojego standardowego działania. W takim przypadku użytkownik musi wprowadzić swoje hasło, aby się zalogować.
Jak działa logowanie na kliencie natywnym przy użyciu bezproblemowego logowania jednokrotnego?
Przepływ logowania na kliencie natywnym wygląda następująco:
- Użytkownik próbuje uzyskać dostęp do aplikacji natywnej (na przykład klienta programu Outlook) z urządzenia firmowego przyłączonego do domeny w sieci firmowej.
- Jeśli użytkownik nie jest jeszcze zalogowany, aplikacja natywna pobiera nazwę użytkownika z sesji systemu Windows urządzenia.
- Aplikacja wysyła nazwę użytkownika do identyfikatora Entra firmy Microsoft i pobiera punkt końcowy WS-Trust MEX dzierżawy. Ten punkt końcowy WS-Trust jest używany wyłącznie przez funkcję bezproblemowego logowania jednokrotnego i nie jest ogólną implementacją protokołu WS-Trust w usłudze Microsoft Entra ID.
- Następnie aplikacja wysyła zapytanie do punktu końcowego WS-Trust MEX, aby sprawdzić, czy jest dostępny zintegrowany punkt końcowy uwierzytelniania. Zintegrowany punkt końcowy uwierzytelniania jest używany wyłącznie przez funkcję bezproblemowego logowania jednokrotnego.
- Jeśli krok 4 zakończy się powodzeniem, zostanie wystawione wyzwanie protokołu Kerberos.
- Jeśli aplikacja może pobrać bilet protokołu Kerberos, przekazuje go do punktu końcowego zintegrowanego uwierzytelniania firmy Microsoft Entra.
- Identyfikator Entra firmy Microsoft odszyfrowuje bilet Protokołu Kerberos i weryfikuje go.
- Identyfikator entra firmy Microsoft podpisuje użytkownika i wystawia token SAML do aplikacji.
- Następnie aplikacja przesyła token SAML do punktu końcowego tokenu OAuth2 identyfikatora OAuth2 firmy Microsoft.
- Microsoft Entra ID weryfikuje token SAML i wystawia token dostępu, token odświeżania dla określonego zasobu oraz token identyfikatora aplikacji.
- Użytkownik uzyskuje dostęp do zasobu aplikacji.
Na poniższym diagramie przedstawiono wszystkie wymagane składniki i kroki.
Następne kroki
- Szybki start — rozpoczynanie pracy i uruchamianie bezproblemowego logowania jednokrotnego firmy Microsoft.
- Często zadawane pytania — odpowiedzi na często zadawane pytania.
- Rozwiązywanie problemów — dowiedz się, jak rozwiązywać typowe problemy z funkcją.
- UserVoice — w przypadku zgłaszania nowych żądań funkcji.