Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Możesz udostępnić logowanie jednokrotne dla aplikacji lokalnych opublikowanych za pośrednictwem serwera proxy aplikacji zabezpieczonego zintegrowanym uwierzytelnianiem systemu Windows. Te aplikacje wymagają biletu dostępu Kerberos, aby uzyskać dostęp. Serwer proxy aplikacji używa Protokołu Kerberos do ograniczonego delegowania (KCD) w celu obsługi tych aplikacji.
Aby dowiedzieć się więcej na temat logowania jednokrotnego,zobacz Co to jest logowanie jednokrotne?.
Możesz włączyć logowanie jednokrotne do aplikacji przy użyciu zintegrowanego uwierzytelniania systemu Windows (IWA), udzielając uprawnień konektorom sieci prywatnej w usłudze Active Directory do podszywania się pod użytkowników. Łączniki używają tego uprawnienia do wysyłania i odbierania tokenów w ich imieniu.
Jak działa logowanie jednokrotne przy użyciu usługi KCD
Na diagramie wyjaśniono przepływ, gdy użytkownik próbuje uzyskać dostęp do aplikacji lokalnej korzystającej z IWA.
- Użytkownik wprowadza adres URL w celu uzyskania dostępu do aplikacji lokalnej za pośrednictwem serwera proxy aplikacji.
- Serwer proxy aplikacji przekierowuje żądanie do usług uwierzytelniania entra firmy Microsoft w celu wstępnego uwierzytelniania. W tym momencie identyfikator entra firmy Microsoft stosuje wszelkie odpowiednie zasady uwierzytelniania i autoryzacji, takie jak uwierzytelnianie wieloskładnikowe. Jeśli użytkownik zostanie zweryfikowany, identyfikator entra firmy Microsoft tworzy token i wysyła go do użytkownika.
- Użytkownik przekazuje token do serwera proxy aplikacji.
- Serwer proxy aplikacji weryfikuje token i pobiera z niego główną nazwę użytkownika (UPN), a następnie łącznik pobiera nazwę UPN oraz nazwę główną usługi (SPN) za pośrednictwem dwóch uwierzytelnionych bezpiecznych kanałów.
- Łącznik przeprowadza negocjację ograniczonego delegowania Kerberos (KCD) z lokalnym AD, podszywając się pod użytkownika, dzięki czemu uzyskuje token protokołu Kerberos dla aplikacji.
- Usługa Active Directory wysyła token protokołu Kerberos dla aplikacji do łącznika.
- Łącznik wysyła oryginalne żądanie do serwera aplikacji przy użyciu tokenu protokołu Kerberos otrzymanego z usługi AD.
- Aplikacja wysyła odpowiedź do łącznika, który jest następnie zwracany do usługi serwera proxy aplikacji, a na koniec do użytkownika.
Wymagania wstępne
Przed rozpoczęciem logowania jednokrotnego dla aplikacji IWA upewnij się, że środowisko jest gotowe z następującymi ustawieniami i konfiguracjami:
- Twoje aplikacje, takie jak aplikacje webowe SharePoint, są ustawione na używanie zintegrowanego uwierzytelniania systemu Windows. Aby uzyskać więcej informacji, zobacz Włączanie obsługi uwierzytelniania Kerberos lub dla programu SharePoint zobacz Planowanie uwierzytelniania Kerberos w programie SharePoint 2013.
- Wszystkie aplikacje mają główne nazwy usługi.
- Serwer z uruchomionym łącznikiem i serwerem z uruchomioną aplikacją są przyłączone do domeny i częścią tej samej domeny lub domen zaufania. Aby uzyskać więcej informacji na temat przyłączania do domeny, zobacz Dołączanie komputera do domeny.
- Upewnij się, że serwer łącznika może odczytać
TokenGroupsGlobalAndUniversal
atrybut dla użytkowników. Wzmocnienie zabezpieczeń może ograniczyć ten dostęp. Włącz serwery łączników, dodając je do grupy dostępu autoryzacji systemu Windows .
Konfigurowanie usługi Active Directory
Konfiguracja usługi Active Directory różni się w zależności od tego, czy łącznik sieci prywatnej i serwer aplikacji znajdują się w tej samej domenie, czy nie.
Łącznik i serwer aplikacji w tej samej domenie
W usłudze Active Directory przejdź do pozycji Narzędzia>Użytkownicy i komputery.
Wybierz serwer z uruchomionym łącznikiem.
Kliknij prawym przyciskiem myszy i wybierz Właściwości>Delegowanie.
Wybierz pozycję Ufaj temu komputerowi tylko dla delegowania do określonych usług.
Wybierz pozycję Użyj dowolnego protokołu uwierzytelniania.
W obszarze Usługi, do których to konto może prezentować delegowane poświadczenia , dodaj wartość tożsamości SPN serwera aplikacji. Ustawienie umożliwia łącznikowi sieci prywatnej podszywanie się pod użytkowników w Active Directory względem aplikacji zdefiniowanych na liście.
Łącznik i serwer aplikacji w różnych domenach
Aby uzyskać listę wymagań wstępnych dotyczących pracy z KCD w różnych domenach, zobacz Ograniczone delegowanie protokołu Kerberos między domenami.
Aby włączyć delegowanie uwierzytelniania Kerberos z serwera proxy aplikacji (łącznik), użyj
PrincipalsAllowedToDelegateTo
właściwości konta usługi aplikacji sieciowej (webserviceaccount
). Serwer aplikacji działa w obszarzewebserviceaccount
, a serwer delegowania toconnectorcomputeraccount
. Uruchom następujące polecenia na kontrolerze domeny (Windows Server 2012 R2 lub nowszym) w tej samej domenie cowebserviceaccount
. Użyj zwykłych nazw (nie UPN) dla obu kont.webserviceaccount
Jeśli jest to konto komputera, użyj następujących poleceń:$connector= Get-ADComputer -Identity connectorcomputeraccount -server dc.connectordomain.com Set-ADComputer -Identity webserviceaccount -PrincipalsAllowedToDelegateToAccount $connector Get-ADComputer webserviceaccount -Properties PrincipalsAllowedToDelegateToAccount
webserviceaccount
Jeśli jest to konto użytkownika, użyj następujących poleceń:$connector= Get-ADComputer -Identity connectorcomputeraccount -server dc.connectordomain.com Set-ADUser -Identity webserviceaccount -PrincipalsAllowedToDelegateToAccount $connector Get-ADUser webserviceaccount -Properties PrincipalsAllowedToDelegateToAccount
Konfigurowanie logowania jednokrotnego
Umieść swoją aplikację zgodnie z instrukcjami opisanymi w temacie Publikowanie aplikacji za pomocą proxy dla aplikacji. Pamiętaj, aby wybrać pozycję Microsoft Entra ID jako metodę wstępnego uwierzytelniania.
Po wyświetleniu aplikacji na liście aplikacji dla przedsiębiorstw wybierz ją i wybierz pozycję Logowanie jednokrotne.
Ustaw tryb logowania jednokrotnego na zintegrowane uwierzytelnianie systemu Windows.
Wprowadź wewnętrzny SPN aplikacji serwera aplikacji. W tym przykładzie nazwa SPN dla opublikowanej aplikacji to
http/www.contoso.com
. Nazwa SPN musi znajdować się na liście usług, do których łącznik może przedstawiać delegowane poświadczenia.Wybierz tożsamość logowania delegowanego dla łącznika, który ma być używany w imieniu użytkowników. Aby uzyskać więcej informacji, zobacz Praca z różnymi tożsamościami lokalnymi i w chmurze.
Logowanie jednokrotne dla aplikacji innych niż Windows
Przepływ delegowania Protokołu Kerberos na serwerze proxy aplikacji Entra firmy Microsoft jest uruchamiany, gdy firma Microsoft Entra uwierzytelnia użytkownika w chmurze. Po nadejściu żądania lokalnie łącznik sieci prywatnej firmy Microsoft Entra wystawia bilet protokołu Kerberos w imieniu użytkownika, wchodząc w interakcję z lokalną usługą Active Directory. Proces jest określany jako Ograniczone delegowanie Kerberos (KCD).
W następnej fazie żądanie jest wysyłane do aplikacji backendowej przy użyciu tego biletu protokołu Kerberos.
Istnieje kilka mechanizmów określających, jak wysyłać bilet Kerberos w takich żądaniach. Większość serwerów innych niż Windows oczekuje, że otrzyma go w postaci tokenu SPNEGO. Mechanizm jest obsługiwany na serwerze proxy aplikacji Firmy Microsoft Entra, ale jest domyślnie wyłączony. Łącznik można skonfigurować dla SPNEGO lub standardowego tokenu Kerberos, ale nie dla obu jednocześnie.
Jeśli skonfigurujesz maszynę łącznika do SPNEGO, upewnij się, że wszystkie inne łączniki w tej grupie łączników są również skonfigurowane z użyciem SPNEGO. Aplikacje oczekujące standardowego tokenu Kerberos powinny być kierowane przez inne łączniki, które nie są skonfigurowane dla spNEGO. Niektóre aplikacje internetowe akceptują oba formaty bez konieczności zmiany konfiguracji.
Aby włączyć usługę SPNEGO:
Otwórz wiersz polecenia, który jest uruchamiany jako administrator.
Uruchom następujące polecenia na serwerach łączników, które wymagają spNEGO.
REG ADD "HKLM\SOFTWARE\Microsoft\Microsoft Entra private network connector" /v UseSpnegoAuthentication /t REG_DWORD /d 1 net stop WAPCSvc & net start WAPCSvc
Aplikacje spoza systemu Windows zazwyczaj używają nazw użytkowników lub nazw kont SAM zamiast adresów e-mail domeny. Jeśli taka sytuacja ma zastosowanie do aplikacji, należy skonfigurować pole tożsamości logowania delegowanego w celu połączenia tożsamości w chmurze z tożsamościami aplikacji.
Praca z różnymi tożsamościami lokalnymi i w chmurze
Serwer proxy aplikacji zakłada, że użytkownicy mają taką samą tożsamość w chmurze i lokalnie. Jednak niektóre organizacje muszą używać alternatywnych identyfikatorów logowania ze względu na zasady firmowe lub wymagania aplikacji. Nadal można włączyć funkcję KCD na potrzeby logowania jednokrotnego, konfigurując tożsamość logowania delegowanego dla każdej aplikacji. To ustawienie określa, która tożsamość ma być używana do logowania jednokrotnego.
Ta funkcja umożliwia organizacjom włączanie logowania jednokrotnego z chmury do aplikacji lokalnych bez konieczności zarządzania różnymi nazwami użytkowników i hasłami. Typowe scenariusze obejmują:
- Używanie wielu domen wewnętrznych (na przykład joe@us.contoso.com, joe@eu.contoso.com) z jedną domeną w chmurze (na przykład joe@contoso.com).
- Korzystanie z nieroutowalnych wewnętrznych nazw domen (na przykład joe@contoso.usa) jednocześnie z używaniem prawidłowych nazw domen w chmurze.
- Działanie bez wewnętrznych nazw domen (na przykład joe).
- Przypisywanie różnych aliasów dla użytkowników lokalnych i w chmurze (na przykład joe-johns@contoso.com vs. joej@contoso.com).
Za pomocą serwera proxy aplikacji możesz wybrać tożsamość używaną do uzyskania biletu Kerberos. To ustawienie jest konfigurowane dla aplikacji i obsługuje systemy, które wymagają formatów innych niż e-mail lub alternatywne metody logowania.
Jeśli używa się delegowanej tożsamości logowania, wartość ta może nie być unikalna we wszystkich domenach lub lasach w organizacji. Ten problem można uniknąć, publikując te aplikacje dwa razy przy użyciu dwóch różnych grup łączników. Ponieważ każda aplikacja ma inną grupę odbiorców użytkowników, możesz dołączyć łączniki do innej domeny.
Jeśli lokalna nazwa konta SAM jest używana dla tożsamości logowania, komputer hostjący łącznik musi zostać dodany do domeny, w której znajduje się konto użytkownika.
Konfigurowanie logowania jednokrotnego dla różnych tożsamości
Skonfiguruj ustawienia programu Microsoft Entra Connect, aby główna tożsamość to adres e-mail (poczta). Konfiguracja jest wykonywana w ramach procesu dostosowywania, zmieniając pole Główna nazwa użytkownika w ustawieniach synchronizacji. Te ustawienia także określają sposób, w jaki użytkownicy logują się do platformy Microsoft 365, komputerów z systemem Windows i innych aplikacji korzystających z Microsoft Entra ID jako magazynu tożsamości.
W ustawieniach konfiguracji aplikacji dla aplikacji, którą chcesz zmodyfikować, wybierz tożsamość logowania delegowanego, która ma być używana:
- Główna nazwa użytkownika (na przykład
joe@contoso.com
) - Alternatywna główna nazwa użytkownika (na przykład
joed@contoso.local
) - Część identyfikatora użytkownika w głównej nazwie użytkownika (na przykład
joe
) - Część Alternatywnej Głównej Nazwy Użytkownika (na przykład
joed
) - Lokalna nazwa konta SAM (zależy od konfiguracji kontrolera domeny)
- Główna nazwa użytkownika (na przykład
Rozwiązywanie problemów z jednokrotnym logowaniem dla różnych tożsamości
Jeśli aplikacja zaplecza odpowiada nieoczekiwanymi odpowiedziami HTTP, rozpocznij rozwiązywanie problemów, sprawdzając zdarzenie 24029 w maszynie łącznika podczas logowania zdarzenia sesji serwera proxy aplikacji. Pole "użytkownik" w szczegółach zdarzenia zawiera tożsamość używaną do delegowania. Aby włączyć dzienniki sesji, przejdź do Podglądu zdarzeń, otwórz menu Widok i wybierz pozycję Pokaż dzienniki analityczne i debugowania.