Udostępnij za pośrednictwem


Konfigurowanie logowania jednokrotnego dla usługi Azure Virtual Desktop przy użyciu Tożsamość Microsoft Entra

Logowanie jednokrotne (SSO) dla usługi Azure Virtual Desktop przy użyciu Tożsamość Microsoft Entra zapewnia bezproblemowe logowanie dla użytkowników łączących się z hostami sesji. Po włączeniu logowania jednokrotnego użytkownicy uwierzytelniają się w systemie Windows przy użyciu tokenu Tożsamość Microsoft Entra. Ten token umożliwia korzystanie z uwierzytelniania bez hasła i innych dostawców tożsamości, którzy federują się z Tożsamość Microsoft Entra podczas nawiązywania połączenia z hostem sesji, dzięki czemu środowisko logowania jest bezproblemowe.

Logowanie jednokrotne przy użyciu Tożsamość Microsoft Entra zapewnia również bezproblemowe środowisko dla zasobów opartych na Tożsamość Microsoft Entra w ramach sesji. Aby uzyskać więcej informacji na temat korzystania z uwierzytelniania bez hasła w sesji, zobacz Uwierzytelnianie bez hasła w sesji.

Aby włączyć logowanie jednokrotne przy użyciu uwierzytelniania Tożsamość Microsoft Entra, należy wykonać pięć zadań:

  1. Włącz uwierzytelnianie Microsoft Entra dla protokołu RDP (Remote Desktop Protocol).

  2. Ukryj okno dialogowe monitu o zgodę.

  3. Utwórz obiekt serwera Kerberos, jeśli Active Directory Domain Services jest częścią środowiska. Więcej informacji na temat kryteriów znajduje się w jego sekcji.

  4. Przejrzyj zasady dostępu warunkowego.

  5. Skonfiguruj pulę hostów, aby włączyć logowanie jednokrotne.

Przed włączeniem logowania jednokrotnego

Przed włączeniem logowania jednokrotnego zapoznaj się z następującymi informacjami dotyczącymi korzystania z niego w środowisku.

Zachowanie blokady sesji

Gdy logowanie jednokrotne przy użyciu Tożsamość Microsoft Entra jest włączone i sesja zdalna jest zablokowana przez użytkownika lub przez zasady, możesz wybrać, czy sesja jest rozłączona, czy jest wyświetlany ekran zdalnego blokowania. Domyślnym zachowaniem jest rozłączenie sesji po zablokowaniu.

Gdy zachowanie blokady sesji jest ustawione na rozłączenie, zostanie wyświetlone okno dialogowe informujące użytkowników, że zostali rozłączeni. Użytkownicy mogą wybrać opcję Połącz ponownie z okna dialogowego, gdy będą gotowi do ponownego nawiązania połączenia. To zachowanie jest wykonywane ze względów bezpieczeństwa i w celu zapewnienia pełnej obsługi uwierzytelniania bez hasła. Odłączenie sesji zapewnia następujące korzyści:

  • Spójne środowisko logowania za pośrednictwem Tożsamość Microsoft Entra w razie potrzeby.

  • Środowisko logowania jednokrotnego i ponowne nawiązywanie połączenia bez monitu uwierzytelniania, gdy są dozwolone przez zasady dostępu warunkowego.

  • Obsługuje uwierzytelnianie bez hasła, takie jak klucze dostępu i urządzenia FIDO2, w przeciwieństwie do ekranu zdalnego blokady.

  • Zasady dostępu warunkowego, w tym uwierzytelnianie wieloskładnikowe i częstotliwość logowania, są ponownie oceniane, gdy użytkownik ponownie nawiązuje połączenie z sesją.

  • Może wymagać uwierzytelniania wieloskładnikowego, aby powrócić do sesji i uniemożliwić użytkownikom odblokowywanie przy użyciu prostej nazwy użytkownika i hasła.

Jeśli chcesz skonfigurować zachowanie blokady sesji, aby wyświetlić ekran zdalnego blokowania zamiast rozłączania sesji, zobacz Konfigurowanie zachowania blokady sesji.

Konta administratora domeny usługi Active Directory z logowaniem jednokrotnym

W środowiskach z kontami użytkowników Active Directory Domain Services (AD DS) i kont użytkowników hybrydowych domyślne zasady replikacji haseł na kontrolerach domeny tylko do odczytu nie zezwalają na replikację haseł dla członków grup zabezpieczeń Administratorzy domeny i Administratorzy. Te zasady uniemożliwiają tym kontom administratorów logowanie się do Microsoft Entra hostów przyłączonych hybrydowo i mogą nadal monitować ich o wprowadzenie poświadczeń. Uniemożliwia to również kontom administratorów uzyskiwanie dostępu do zasobów lokalnych korzystających z uwierzytelniania Kerberos z hostów przyłączonych do Microsoft Entra. Nie zalecamy nawiązywania połączenia z sesją zdalną przy użyciu konta, które jest administratorem domeny ze względów bezpieczeństwa.

Jeśli chcesz wprowadzić zmiany na hoście sesji jako administrator, zaloguj się do hosta sesji przy użyciu konta innego niż administrator, a następnie użyj opcji Uruchom jako administrator lub narzędzia runas z wiersza polecenia, aby przejść na administratora.

Wymagania wstępne

Aby można było włączyć logowanie jednokrotne, musisz spełnić następujące wymagania wstępne:

Włączanie uwierzytelniania Microsoft Entra dla protokołu RDP

Najpierw należy zezwolić na uwierzytelnianie Microsoft Entra dla systemu Windows w dzierżawie Microsoft Entra, co umożliwia wystawianie tokenów dostępu RDP umożliwiających użytkownikom logowanie się do hostów sesji usługi Azure Virtual Desktop. Właściwość ma wartość isRemoteDesktopProtocolEnabled true w obiekcie jednostki remoteDesktopSecurityConfiguration usługi dla następujących aplikacji Microsoft Entra:

Nazwa aplikacji Identyfikator aplikacji
Pulpit zdalny Microsoft a4a365df-50f1-4397-bc59-1a1564b8bb9c
Logowanie do chmury systemu Windows 270efc09-cd0d-444b-a71f-39af4910ec45

Ważna

W ramach nadchodzącej zmiany przechodzimy z Pulpit zdalny Microsoft do logowania do chmury systemu Windows, począwszy od 2024 roku. Skonfigurowanie obu aplikacji zapewnia teraz gotowość do zmiany.

Aby skonfigurować jednostkę usługi, użyj zestawu Microsoft Graph PowerShell SDK , aby utworzyć nowy obiekt remoteDesktopSecurityConfiguration w jednostce usługi i ustawić właściwość isRemoteDesktopProtocolEnabled na true. Możesz również użyć interfejs Graph API firmy Microsoft z narzędziem, takim jak Eksplorator programu Graph.

  1. Otwórz usługę Azure Cloud Shell w Azure Portal z typem terminalu programu PowerShell lub uruchom program PowerShell na urządzeniu lokalnym.

  1. Upewnij się, że zestaw Microsoft Graph PowerShell SDK został zainstalowany z wymagań wstępnych, a następnie zaimportuj moduły Uwierzytelnianie i aplikacje programu Microsoft Graph i połącz się z programem Microsoft Graph przy użyciu Application.Read.All zakresów i Application-RemoteDesktopConfig.ReadWrite.All , uruchamiając następujące polecenia:

    Import-Module Microsoft.Graph.Authentication
    Import-Module Microsoft.Graph.Applications
    
    Connect-MgGraph -Scopes "Application.Read.All","Application-RemoteDesktopConfig.ReadWrite.All"
    
  2. Pobierz identyfikator obiektu dla każdej jednostki usługi i zapisz je w zmiennych, uruchamiając następujące polecenia:

    $MSRDspId = (Get-MgServicePrincipal -Filter "AppId eq 'a4a365df-50f1-4397-bc59-1a1564b8bb9c'").Id
    $WCLspId = (Get-MgServicePrincipal -Filter "AppId eq '270efc09-cd0d-444b-a71f-39af4910ec45'").Id
    
  3. Ustaw właściwość isRemoteDesktopProtocolEnabled na wartość , true uruchamiając następujące polecenia. Nie ma żadnych danych wyjściowych z tych poleceń.

    If ((Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $MSRDspId) -ne $true) {
        Update-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $MSRDspId -IsRemoteDesktopProtocolEnabled
    }
    
    If ((Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $WCLspId) -ne $true) {
        Update-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $WCLspId -IsRemoteDesktopProtocolEnabled
    }
    
  4. Potwierdź, że właściwość isRemoteDesktopProtocolEnabled jest ustawiona na true , uruchamiając następujące polecenia:

    Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $MSRDspId
    Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $WCLspId
    

    Dane wyjściowe obu poleceń powinny być następujące:

    Id IsRemoteDesktopProtocolEnabled
    -- ------------------------------
    id True
    

Domyślnie po włączeniu logowania jednokrotnego użytkownicy widzą okno dialogowe zezwalające na połączenie pulpitu zdalnego podczas nawiązywania połączenia z nowym hostem sesji. Microsoft Entra pamięta maksymalnie 15 hostów przez 30 dni przed ponownym monitowaniem. Jeśli użytkownicy zobaczą ten dialog, aby zezwolić na połączenie pulpitu zdalnego, mogą wybrać opcję Tak , aby nawiązać połączenie.

To okno dialogowe można ukryć, konfigurując listę zaufanych urządzeń. Aby skonfigurować listę urządzeń, utwórz w Tożsamość Microsoft Entra co najmniej jedną grupę zawierającą hosty sesji, a następnie dodaj identyfikatory grup do właściwości w jednostkach usługi logowania jednokrotnego, Pulpit zdalny Microsoft i logowaniu do chmury systemu Windows.

Porada

Zalecamy użycie grupy dynamicznej i skonfigurowanie reguł członkostwa dynamicznego w celu uwzględnienia wszystkich hostów sesji usługi Azure Virtual Desktop. Nazw urządzeń w tej grupie można użyć, ale aby uzyskać bezpieczniejszą opcję, możesz ustawić atrybuty rozszerzenia urządzenia i używać ich przy użyciu usługi Microsoft interfejs Graph API. Mimo że grupy dynamiczne są zwykle aktualizowane w ciągu 5–10 minut, duże dzierżawy mogą potrwać do 24 godzin.

Grupy dynamiczne wymagają licencji Tożsamość Microsoft Entra P1 lub licencji Intune for Education. Aby uzyskać więcej informacji, zobacz Dynamiczne reguły członkostwa dla grup.

Aby skonfigurować jednostkę usługi, użyj zestawu Microsoft Graph PowerShell SDK , aby utworzyć nowy obiekt targetDeviceGroup w jednostce usługi z identyfikatorem obiektu grupy dynamicznej i nazwą wyświetlaną. Możesz również użyć interfejs Graph API firmy Microsoft z narzędziem, takim jak Eksplorator programu Graph.

  1. Utwórz grupę dynamiczną w Tożsamość Microsoft Entra zawierającą hosty sesji, dla których chcesz ukryć okno dialogowe. Zanotuj identyfikator obiektu grupy w następnym kroku.

  2. W tej samej sesji programu PowerShell utwórz targetDeviceGroup obiekt, uruchamiając następujące polecenia, zastępując <placeholders> element własnymi wartościami:

    $tdg = New-Object -TypeName Microsoft.Graph.PowerShell.Models.MicrosoftGraphTargetDeviceGroup
    $tdg.Id = "<Group object ID>"
    $tdg.DisplayName = "<Group display name>"
    
  3. Dodaj grupę do obiektu, targetDeviceGroup uruchamiając następujące polecenia:

    New-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $MSRDspId -BodyParameter $tdg
    New-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $WCLspId -BodyParameter $tdg
    

    Dane wyjściowe powinny być podobne do następującego przykładu:

    Id                                   DisplayName
    --                                   -----------
    12345678-abcd-1234-abcd-1234567890ab Contoso-session-hosts
    

    Powtórz kroki 2 i 3 dla każdej grupy, którą chcesz dodać do obiektu targetDeviceGroup , maksymalnie do 10 grup.

  4. Jeśli później musisz usunąć grupę urządzeń z obiektu targetDeviceGroup , uruchom następujące polecenia, zastępując <placeholders> je własnymi wartościami:

    Remove-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $MSRDspId -TargetDeviceGroupId "<Group object ID>"
    Remove-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $WCLspId -TargetDeviceGroupId "<Group object ID>"
    

Tworzenie obiektu serwera Kerberos

Jeśli hosty sesji spełniają następujące kryteria, należy utworzyć obiekt serwera Kerberos. Aby uzyskać więcej informacji, zobacz Enable passwordless security key sign-in to on-premises resources by using Tożsamość Microsoft Entra(Włączanie logowania bez hasła do zasobów lokalnych przy użyciu Tożsamość Microsoft Entra), w szczególności sekcję Tworzenie obiektu serwera Kerberos:

  • Host sesji jest Microsoft Entra przyłączony hybrydowo. Aby ukończyć uwierzytelnianie na kontrolerze domeny, musisz mieć obiekt serwera Kerberos.

  • Host sesji jest Microsoft Entra przyłączony, a środowisko zawiera kontrolery domeny usługi Active Directory. Musisz mieć obiekt serwera Kerberos, aby użytkownicy mogli uzyskiwać dostęp do zasobów lokalnych, takich jak udziały SMB i zintegrowane uwierzytelnianie systemu Windows w witrynach internetowych.

Ważna

Jeśli włączysz logowanie jednokrotne Microsoft Entra hostów sesji przyłączonych hybrydowo bez tworzenia obiektu serwera Kerberos, podczas próby nawiązania połączenia z sesją zdalną może wystąpić jedna z następujących czynności:

  • Zostanie wyświetlony komunikat o błędzie informujący, że określona sesja nie istnieje.
  • Logowanie jednokrotne zostanie pominięte i zostanie wyświetlone standardowe okno dialogowe uwierzytelniania dla hosta sesji.

Aby rozwiązać te problemy, utwórz obiekt serwera Kerberos, a następnie połącz się ponownie.

Przeglądanie zasad dostępu warunkowego

Po włączeniu logowania jednokrotnego zostanie wprowadzona nowa aplikacja Tożsamość Microsoft Entra w celu uwierzytelniania użytkowników na hoście sesji. Jeśli masz zasady dostępu warunkowego stosowane podczas uzyskiwania dostępu do usługi Azure Virtual Desktop, zapoznaj się z zaleceniami dotyczącymi konfigurowania uwierzytelniania wieloskładnikowego , aby upewnić się, że użytkownicy mają odpowiednie środowisko.

Konfigurowanie puli hostów w celu włączenia logowania jednokrotnego

Aby włączyć logowanie jednokrotne w puli hostów, należy skonfigurować następującą właściwość RDP, którą można wykonać przy użyciu Azure Portal lub programu PowerShell. Kroki konfigurowania właściwości protokołu RDP można znaleźć w temacie Dostosowywanie właściwości protokołu RDP (Remote Desktop Protocol) dla puli hostów.

  • W Azure Portal ustaw Microsoft Entra logowanie jednokrotne naConnections użyje uwierzytelniania Microsoft Entra w celu zapewnienia logowania jednokrotnego.

  • W przypadku programu PowerShell ustaw właściwość enablerdsaadauth na wartość 1.

Następne kroki