Citrix DaaS™

Microsoft Entra Single Sign-On

Sie können Single Sign-On (SSO) nutzen, wenn Sie Microsoft Entra ID-Anmeldeinformationen verwenden, um auf virtuelle Anwendungen und Desktops auf Microsoft Entra-verbundenen oder Microsoft Entra hybrid-verbundenen Sitzungshosts zuzugreifen.

Unterstützte Infrastruktur

Im Folgenden finden Sie eine Übersicht über die Infrastrukturkomponenten, die für Microsoft Entra Single Sign-On unterstützt werden:

Maschinenidentität Citrix DaaS CVAD On-Prem Citrix Workspace Citrix Storefront Citrix Gateway Service NetScaler Gateway
Microsoft Entra-verbunden Ja Nein Ja Nein Ja Ja
Microsoft Entra hybrid-verbunden Ja Nein Ja Nein Ja Ja

Unterstützte Identitätsanbieter

Im Folgenden finden Sie eine Übersicht über die Workspace-Identitätsanbieter, die für Microsoft Entra Single Sign-On unterstützt werden:

Maschinenidentität Entra ID Active Directory Active Directory + Token Okta SAML NetScaler Gateway Adaptive Authentifizierung
Microsoft Entra-verbunden Ja Nein Nein Nein Ja Nein Nein

Unterstützte Zugriffsmethoden

Im Folgenden sind die in einer Citrix-Umgebung verfügbaren Zugriffsmethoden aufgeführt:

  • Nativer Zugriff: Sie verwenden den nativen Citrix Workspace-App-Client, um auf Citrix Workspace oder Citrix Storefront zuzugreifen und die Sitzungsverbindung herzustellen.
  • Browserzugriff: Sie greifen über einen Browser auf Citrix Workspace oder Citrix Storefront zu und stellen die Verbindung zur virtuellen App- oder Desktopsitzung über den Citrix Workspace-App für HTML5-Client her.
    • Hybridzugriff: Sie greifen über einen Browser auf Citrix Workspace oder Citrix Storefront zu und stellen die Verbindung zur virtuellen App- oder Desktopsitzung über den nativen Workspace-App-Client her.

    • Im Folgenden finden Sie eine Übersicht über die Zugriffsmethoden, die für Microsoft Entra Single Sign-On unterstützt werden:

  • Zugriffsmethode Windows Linux Mac Chrome OS Android iOS
    • | — | — | — | — | — | ———– | ———– |
    • Nativ Ja Ja Ja Ja Ja Ja
    • Browser Ja Ja Ja Ja Ja Ja
    • Hybrid Ja Nein Ja Nein Nein Nein

Systemanforderungen

-  Im Folgenden sind die Systemanforderungen für die Verwendung von Microsoft Entra Single Sign-On aufgeführt:

-  Steuerungsebene: Citrix DaaS
-  Citrix Cloud Commercial (USA, EU und APS)
-  Citrix Cloud Japan
-  Benutzerportal: Citrix Workspace

HINWEIS

Die Citrix Web Extension wird nur benötigt, wenn Ihre Benutzer Hybridzugriff auf Windows- oder Mac-Geräten nutzen. Wenn Ihre Benutzer nativen Zugriff oder Browserzugriff nutzen, ist die Citrix Web Extension nicht erforderlich.

Überlegungen

-  Wenn Ihre Benutzer Hybridzugriff nutzen, müssen sie entweder Microsoft Edge oder Google Chrome verwenden und die Citrix Web Extension installieren. Microsoft Entra Single Sign-On mit Hybridzugriff wird mit anderen Browsern nicht unterstützt.
  • Auto Client Reconnect wird nicht unterstützt, wenn Microsoft Entra Single Sign-On für die Anmeldung an der Sitzung verwendet wird. Diese Funktion wird automatisch deaktiviert, wenn diese Anmeldemethode verwendet wird. Die Sitzungszuverlässigkeit ist weiterhin für die automatische Wiederherstellung der Verbindung bei Netzwerkunterbrechungen verfügbar.
    • Wenn ein virtueller Desktop gesperrt ist, besteht das Standardverhalten darin, den Windows-Sperrbildschirm anzuzeigen. Abhängig von Ihren Authentifizierungsanforderungen müssen Sie möglicherweise das Sitzungssperrverhalten ändern. Weitere Informationen finden Sie unter Sitzungssperrverhalten.
    • Bei Verwendung von Microsoft Entra hybrid-verbundenen Sitzungshosts funktioniert Single Sign-On standardmäßig nicht für Mitglieder privilegierter Gruppen wie Domänen-Admins. Um dies zu ermöglichen, fügen Sie die Gruppe oder den Benutzer zur Zulassungsliste des Read-Only Domain Controllers (RODC) für den Microsoft Entra Kerberos-Zugriff hinzu. Details finden Sie unter Microsoft Entra Kerberos TGT und Active Directory-Zugriffssteuerung.

Konfiguration von Microsoft Entra Single Sign-On

Übersicht

Die Konfiguration von Microsoft Entra Single Sign-On umfasst die folgenden Schritte:

-  1.  Azure- und Microsoft Entra ID-Konfiguration
-  1.  [Registrieren Sie die Citrix-Ressourcen- und Clientanwendungen](#register-citrix-applications).
1.  [Aktivieren Sie die Remote Desktop Security Configuration](#enable-remote-desktop-security-configuration) für die Citrix-Ressourcenanwendung.
1.  [Genehmigen Sie die Clientanwendung](#approve-the-client-application).
-  1.  [Blenden Sie die Benutzerzustimmungsaufforderung aus](#hide-the-user-consent-prompt-dialog).
-  1.  [Erstellen Sie ein Kerberos-Serverobjekt](#create-a-kerberos-server-object) (nur in Microsoft Entra hybrid-verbundenen Umgebungen).
1.  [Überprüfen Sie die Richtlinien für den bedingten Zugriff von Microsoft Entra](#review-microsoft-entra-conditional-access-policies).
  1. Citrix-Konfiguration

Details zu jedem Konfigurationsschritt finden Sie in den folgenden Abschnitten.

Azure- und Microsoft Entra ID-Konfiguration

Um Microsoft Entra Single Sign-On nutzen zu können, müssen Sie zunächst die Microsoft Entra-Authentifizierung für Windows in Ihrem Microsoft Entra ID-Mandanten zulassen. Dies ermöglicht die Ausstellung der erforderlichen Authentifizierungstoken, die Benutzern die Anmeldung an Microsoft Entra-verbundenen und Microsoft Entra hybrid-verbundenen Sitzungshosts ermöglichen. Dazu müssen Sie Folgendes tun:

  1. Registrieren Sie die Citrix-Anwendungen (Ressourcen-App und Client-App) in Ihrem Microsoft Entra ID-Mandanten.
  2. Aktivieren Sie die Remote Desktop Security Configuration für die Citrix-Ressourcenanwendung.
  3. Fügen Sie die Citrix-Clientanwendung als genehmigten Client für die Citrix-Ressourcenanwendung hinzu.
  4. [Optional] Blenden Sie das Dialogfeld für die Benutzerzustimmungsaufforderung aus.
  5. Erstellen Sie ein Kerberos-Serverobjekt.
  6. Überprüfen Sie die Richtlinien für den bedingten Zugriff von Microsoft Entra.

Der Benutzer, der die Azure-Konfiguration vornimmt, muss mindestens eine der folgenden integrierten Microsoft Entra-Rollen oder eine gleichwertige Rolle zugewiesen bekommen haben:

Um die Azure-Konfiguration abzuschließen, müssen Sie das Microsoft Graph PowerShell SDK oder die Microsoft Graph API mit einem Tool wie dem Graph Explorer verwenden. Anweisungen zur Durchführung der Konfiguration sowohl mit PowerShell als auch mit Graph Explorer werden bereitgestellt.

Wenn Sie sich für die Verwendung des Microsoft Graph PowerShell SDK entscheiden, beachten Sie bitte:

Citrix-Anwendungen registrieren

Sie müssen die Citrix Resource- und Citrix Client-Anwendungen in Ihrem Azure-Mandanten registrieren.

Sie können die folgenden Zustimmungs-URLs verwenden, um die Anwendungen zu registrieren. Stellen Sie sicher, dass Sie zuerst die Ressourcen-App und danach die Client-App registrieren.

  • Citrix Cloud USA, EU, APS
    • Ressourcen-App: https://login.microsoftonline.com/common/adminconsent?client_id=3a510bb1-e334-4298-831e-3eac97f8b26c
    • Client-App: https://login.microsoftonline.com/common/adminconsent?client_id=85651ebe-9a8e-49e4-aaf2-9274d9b6499f
  • Citrix Cloud Japan
    • Ressourcen-App: https://login.microsoftonline.com/common/adminconsent?client_id=0027603f-364b-40f2-98be-8ca4bb79bf8b
    • Client-App: https://login.microsoftonline.com/common/adminconsent?client_id=0fa97bc0-059c-4c10-8c54-845a1fd5a916

Im Folgenden sind die Berechtigungen der Anwendungen aufgeführt:

Citrix Ressourcenanwendung

Eine Anwendung wird mit den folgenden Berechtigungen erstellt:

API-Name Anspruchswert Berechtigung Typ
Microsoft Graph User.Read Anmelden und Benutzerprofil lesen Delegiert

Für Citrix Cloud USA, EU und APS wird die Anwendung Citrix-Workspace-Resource (Anwendungs-ID 3a510bb1-e334-4298-831e-3eac97f8b26c) genannt.

Für Citrix Cloud Japan wird die Anwendung Citrix-Workspace-Resource-JP (Anwendungs-ID 0027603f-364b-40f2-98be-8ca4bb79bf8b) genannt.

Citrix Clientanwendung

Eine Anwendung wird mit den folgenden Berechtigungen erstellt:

-  | API-Name | Anspruchswert | Berechtigung | Typ |
-  | -- | -- | -- | -- | | Citrix-Workspace-Resource | user\_impersonation | Citrix Entra ID SSO | Delegiert | | ^^ Citrix-Workspace-Resource-JP | ^^ | ^^ | ^^ | | Microsoft Graph | User.Read | Anmelden und Benutzerprofil lesen | Delegiert |

Für Citrix Cloud USA, EU und APS wird die Anwendung Citrix-Workspace (Anwendungs-ID 85651ebe-9a8e-49e4-aaf2-9274d9b6499f) genannt.

Für Citrix Cloud Japan wird die Anwendung Citrix-Workspace-JP (Anwendungs-ID 0fa97bc0-059c-4c10-8c54-845a1fd5a916) genannt.

Remote Desktop Security Configuration aktivieren

Sie müssen die Remote Desktop Security Configuration in der Citrix Ressourcenanwendung mit einer von zwei Methoden aktivieren: PowerShell oder Graph Explorer. Anweisungen für beide sind enthalten, Sie müssen jedoch nur eine davon befolgen.

PowerShell
  1. Importieren Sie die Microsoft Graph-Module für Authentifizierung und Anwendung und stellen Sie eine Verbindung zu Microsoft Graph mit den Bereichen Application.Read.All und Application-RemoteDesktopConfig.ReadWrite.All her:

    Import-Module Microsoft.Graph.Authentication
    Import-Module Microsoft.Graph.Applications
    Import-Module Microsoft.Graph.Beta.Applications
    Connect-MgGraph -Scopes "Application.Read.All","Application-RemoteDesktopConfig.ReadWrite.All"
    <!--NeedCopy-->
    
  2. Rufen Sie die Objekt-ID für die Dienstprinzipale ab, die den App-Registrierungen zugeordnet sind:

    Citrix Cloud USA, EU, APS

    $CtxResourceSpId = (Get-MgServicePrincipal -Filter "AppId eq '3a510bb1-e334-4298-831e-3eac97f8b26c'").Id
    $CtxClientSpId = (Get-MgServicePrincipal -Filter "AppId eq '85651ebe-9a8e-49e4-aaf2-9274d9b6499f'").Id
    <!--NeedCopy-->
    
  • Citrix Cloud Japan

    ``` $CtxResourceSpId = (Get-MgServicePrincipal -Filter “AppId eq ‘0027603f-364b-40f2-98be-8ca4bb79bf8b’”).Id $CtxClientSpId = (Get-MgServicePrincipal -Filter “AppId eq ‘0fa97bc0-059c-4c10-8c54-845a1fd5a916’”).Id

  • ```

  1. Setzen Sie die Eigenschaft isRemoteDesktopProtocolEnabled auf true:

    If ((Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $CtxResourceSpId) -ne $true) {
        Update-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $CtxResourceSpId -IsRemoteDesktopProtocolEnabled
    }
    <!--NeedCopy-->
    
  2. Bestätigen Sie, dass die Eigenschaft isRemoteDesktopProtocolEnabled auf true gesetzt ist:

    Get-MgServicePrincipalRemoteDesktopSecurityConfiguration -ServicePrincipalId $CtxResourceSpId
    <!--NeedCopy-->
    
Graph Explorer
  1. Rufen Sie die Objekt-ID (OID) für die Dienstprinzipale ab, die den App-Registrierungen zugeordnet sind, aus dem Azure-Portal ab:
    1. Navigieren Sie zu Microsoft Entra ID > Unternehmensanwendungen.
    2. Entfernen Sie den Filter Anwendungstyp, falls gesetzt, damit alle Anwendungen aufgelistet werden.
    3. Suchen Sie nach Citrix-Workspace-Resource / Citrix-Workspace-Resource-JP und notieren Sie die zugehörige Objekt-ID für die Ressourcenanwendung.
    4. Suchen Sie nach Citrix-Workspace / Citrix-Workspace-JP und notieren Sie die zugehörige Objekt-ID für die Clientanwendung.
  2. Melden Sie sich im Graph Explorer mit einem Konto des Ziel-Azure-Mandanten an, das über die erforderlichen Berechtigungen verfügt.
  3. Legen Sie die folgende Abfrage fest:

    • HTTP-Anfragemethode: PATCH
    • Microsoft Graph API-Version: v1.0
    • Abfrage:

       https://graph.microsoft.com/v1.0/servicePrincipals/<resourceAppOID>/remoteDesktopSecurityConfiguration
       <!--NeedCopy-->
      
    • Anfragetext:

      ```

    • {
  • “@odata.type”: “#microsoft.graph.remoteDesktopSecurityConfiguration”,
  • “isRemoteDesktopProtocolEnabled”: true } ```

    1. Wählen Sie die Registerkarte Berechtigungen ändern und stellen Sie sicher, dass Sie der Berechtigung Application.ReadWrite.All zugestimmt haben.
  1. Führen Sie die Abfrage aus.

Weitere Informationen finden Sie unter Ressourcentyp remoteDesktopSecurityConfiguration.

Clientanwendung genehmigen

Sie müssen die Citrix Client-Anwendung explizit als genehmigten Client in der Citrix Ressourcenanwendung hinzufügen. Dies kann entweder mit PowerShell oder Graph Explorer erfolgen. Anweisungen für beide Methoden werden bereitgestellt, Sie müssen jedoch nur eine davon befolgen.

PowerShell
  1. Erstellen Sie ein approvedClientApp-Objekt:
  • ```

  • $acp = New-Object -TypeName Microsoft.Graph.Beta.PowerShell.Models.MicrosoftGraphApprovedClientApp $acp.Id = $CtxClientSpId

    ```

  1. Fügen Sie die Client-App dem approvedClientApp-Objekt hinzu:

    New-MgBetaServicePrincipalRemoteDesktopSecurityConfigurationApprovedClientApp -ServicePrincipalId $CtxResourceSpId -BodyParameter $acp
    <!--NeedCopy-->
    

    Die Ausgabe sollte wie folgt aussehen:

    Id                                    DisplayName
    --                                    --
    87654321-wxyz-1a2b-3c4d-1029384756af  Citrix-Workspace
    
Graph Explorer
  • Legen Sie die folgende Abfrage fest und führen Sie sie aus:

  • HTTP-Anfragemethode: POST
  • Microsoft Graph API-Version: beta
  • Abfrage:

  • ``` https://graph.microsoft.com/beta/servicePrincipals//remoteDesktopSecurityConfiguration/approvedClientApps

  • ```

  • Anfragetext:

     {
         "@odata.type": "#microsoft.graph.approvedClientApp",
         "id": "<clientAppOID>"
     }
     <!--NeedCopy-->
    

Dialogfeld für die Benutzerzustimmungsaufforderung ausblenden

Standardmäßig werden Benutzer aufgefordert, die Remotedesktopverbindung zuzulassen, wenn sie sich mit einem in Microsoft Entra eingebundenen oder in Microsoft Entra hybrid eingebundenen Sitzungshost verbinden, bei dem Microsoft Entra Single Sign-On aktiviert ist, wobei sie Ja auswählen müssen, um Single Sign-On zuzulassen. Microsoft Entra merkt sich bis zu 15 eindeutige Sitzungshosts für 30 Tage, bevor es erneut eine Aufforderung anzeigt.

Sie können dieses Dialogfeld ausblenden, indem Sie eine Liste von Zielgeräten konfigurieren. Um die Geräteliste zu konfigurieren, müssen Sie eine oder mehrere Gruppen in Microsoft Entra ID erstellen, die die in Microsoft Entra eingebundenen und/oder in Microsoft Entra hybrid eingebundenen Sitzungshosts enthalten, und dann die Gruppen in der Ressourcenanwendung autorisieren, bis zu maximal 10 Gruppen.

HINWEIS

Es wird dringend empfohlen, eine dynamische Gruppe zu erstellen, um die Mitgliederverwaltung für die Gruppe zu vereinfachen. Während dynamische Gruppen normalerweise innerhalb von 5-10 Minuten aktualisiert werden, kann es bei großen Mandanten bis zu 24 Stunden dauern.

Dynamische Gruppen erfordern die Microsoft Entra ID P1-Lizenz oder die Intune for Education-Lizenz. Weitere Informationen finden Sie unter Regeln für die dynamische Mitgliedschaft von Gruppen.

Sobald die Gruppen erstellt wurden, können Sie sie entweder über PowerShell oder Graph Explorer autorisieren. Anweisungen für beide Methoden werden bereitgestellt, Sie müssen jedoch nur eine davon befolgen.

PowerShell
  1. Rufen Sie die Objekt-ID (OID) der Gruppe ab, die die Sitzungshosts enthält, für die Sie die Remotedesktopverbindungsaufforderung ausblenden möchten.
  2. Erstellen Sie ein targetDeviceGroup-Objekt:

    $tdg = New-Object -TypeName Microsoft.Graph.PowerShell.Models.MicrosoftGraphTargetDeviceGroup
    $tdg.Id = "<groupOID>"
    <!--NeedCopy-->
    
  3. Fügen Sie die Client-App dem approvedClientApp-Objekt hinzu:

    New-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $CtxResourceSpId -BodyParameter $tdg
    <!--NeedCopy-->
    

    Die Ausgabe sollte wie folgt aussehen:

    Id                                    DisplayName
    --                                    --
    87654321-wxyz-1a2b-3c4d-1029384756af  Entra-SSO-Desktops
    
  4. Wenn Sie später eine Gerätegruppe aus dem targetDeviceGroup-Objekt entfernen müssen, führen Sie den folgenden Befehl aus:

    Remove-MgServicePrincipalRemoteDesktopSecurityConfigurationTargetDeviceGroup -ServicePrincipalId $CtxResourceSpId -TargetDeviceGroupId "<groupOID>"
    <!--NeedCopy-->
    
Graph Explorer

Legen Sie die folgende Abfrage fest und führen Sie sie aus:

  • HTTP-Anfragemethode: POST
  • Microsoft Graph API-Version: v1.0
  • Abfrage:

     https://graph.microsoft.com/v1.0/servicePrincipals/<resourceAppOID>/remoteDesktopSecurityConfiguration/targetDeviceGroups
     <!--NeedCopy-->
    
  • Anfragetext:

     {
         "@odata.type": "#microsoft.graph.targetDeviceGroup",
         "id": "<groupOID>"
     }
     <!--NeedCopy-->
    

HINWEIS

Sie können diese Schritte wiederholen, um bei Bedarf weitere Gruppen hinzuzufügen, bis zu einem Maximum von 10 Gruppen.

Wenn Sie später eine Gerätegruppe aus dem targetDeviceGroup-Objekt entfernen müssen, legen Sie Folgendes fest und führen Sie die Abfrage aus:

  • HTTP-Anfragemethode: DELETE
  • Microsoft Graph API-Version: v1.0
  • Abfrage:

     https://graph.microsoft.com/beta/servicePrincipals/<resourceAppOID>/remoteDesktopSecurityConfiguration/targetDeviceGroups
     <!--NeedCopy-->
    

Siehe Ressourcentyp targetDeviceGroup als Referenz.

Kerberos-Serverobjekt erstellen

Wenn Ihre Sitzungshosts Microsoft Entra hybrid eingebunden sind, müssen Sie ein Kerberos-Serverobjekt in der Active Directory-Domäne konfigurieren, in der sich die Benutzer- und Computerkonten befinden. Weitere Informationen finden Sie unter Kerberos-Serverobjekt erstellen.

Microsoft Entra Conditional Access-Richtlinien überprüfen

Wenn Sie Microsoft Entra Conditional Access-Richtlinien verwenden oder verwenden möchten, überprüfen Sie die Konfiguration, die auf die Citrix Ressourcenanwendung angewendet wird, um sicherzustellen, dass Benutzer die beabsichtigte Anmeldeerfahrung haben.

Ausführliche Anleitungen zur Konfiguration von Conditional Access bei Verwendung von Microsoft Entra Single Sign-On für DaaS finden Sie in der Microsoft-Dokumentation. Beachten Sie, dass die erforderlichen Conditional Access-Einstellungen auf die Citrix Ressourcenanwendung und nicht auf die Microsoft-Anwendungen angewendet werden müssen.

Citrix Sitzungshosts

Stellen Sie sicher, dass die Systemanforderungen für die Sitzungshosts erfüllt sind:

  1. Stellen Sie sicher, dass die Sitzungshosts entweder Microsoft Entra Joined oder Microsoft Entra Hybrid Joined sind.
  2. Installieren Sie die erforderliche Betriebssystemversion und den Build gemäß den Systemanforderungen.
  3. Installieren Sie die erforderliche VDA-Version gemäß den Systemanforderungen.

Microsoft Entra Hybrid Joined Sitzungshosts

Wenn Sie Microsoft Entra Hybrid Joined Sitzungshosts mit Citrix Machines Creation Services, Citrix Provisioning oder Windows 365 bereitstellen, können Sie mit dem nächsten Abschnitt fortfahren. Wenn Sie Microsoft Entra Hybrid Joined Hosts mit einem anderen Tool oder einer anderen Methode bereitstellen, müssen Sie den folgenden Registrierungswert zu Ihren Sitzungshosts hinzufügen:

  • Schlüssel: HKLM\SYSTEM\CurrentControlSet\Control\Citrix
  • Werttyp: DWORD
  • Wertname: AzureADJoinType
  • Daten: 1

Verhalten der Sitzungssperre

Wenn ein virtueller Desktop gesperrt ist, besteht das Standardverhalten darin, den Windows-Sperrbildschirm anzuzeigen. Zu diesem Zeitpunkt sind die unterstützten Authentifizierungsmethoden zum Entsperren des Desktops Benutzername und Kennwort oder Smartcard.

Wenn Sie eine kennwortlose Bereitstellung haben, bei der Benutzer ihre Kennwörter nicht kennen, wird empfohlen, das Verhalten der Sitzungssperre so zu konfigurieren, dass die Sitzung getrennt wird, anstatt den Sperrbildschirm anzuzeigen.

  • Multi-Session-Sitzungshosts

    Sie können dieses Verhalten konfigurieren, indem Sie die Einstellung Remotesitzung bei Sperrung für die Microsoft Identity Platform-Authentifizierung trennen über Intune oder Gruppenrichtlinien aktivieren. Ausführliche Schritte finden Sie unter Verhalten der Sitzungssperre für Azure Virtual Desktop konfigurieren.

  • Single-Session-Sitzungshosts

    • Die Einstellung Remotesitzung bei Sperrung für die Microsoft Identity Platform-Authentifizierung trennen wird derzeit nicht unterstützt. Sie können jedoch dasselbe Verhalten erreichen, indem Sie eine geplante Windows-Aufgabe erstellen.

    Das folgende Beispielskript erstellt eine geplante Aufgabe auf Single-Session-Hosts, die cmd.exe /c tsdiscon ausführt, wenn der Desktop gesperrt ist:

     # Create the TaskService COM object
     $service = New-Object -ComObject "Schedule.Service"
     $service.Connect()
    
     # Get the root folder and create a new task definition
     $rootFolder = $service.GetFolder("\")
     $taskDef = $service.NewTask(0)
    
     # Registration info
     $taskDef.RegistrationInfo.Description = "Disconnect session when workstation is locked"
    
     # Principal (Users group, least privilege)
     $principal = $taskDef.Principal
     $principal.GroupId = "S-1-5-32-545"
     $principal.RunLevel = 0  # 0 = LeastPrivilege
    
     # Settings
     $settings = $taskDef.Settings
     $settings.Enabled = $true
     $settings.AllowDemandStart = $true
     $settings.DisallowStartIfOnBatteries = $false
     $settings.StopIfGoingOnBatteries = $false
     $settings.AllowHardTerminate = $false
     $settings.StartWhenAvailable = $false
     $settings.RunOnlyIfNetworkAvailable = $false
     $settings.IdleSettings.StopOnIdleEnd = $true
     $settings.IdleSettings.RestartOnIdle = $false
     $settings.Hidden = $false
     $settings.RunOnlyIfIdle = $false
     $settings.DisallowStartOnRemoteAppSession = $false
     $settings.UseUnifiedSchedulingEngine = $true
     $settings.WakeToRun = $false
     $settings.ExecutionTimeLimit = "PT0S"   # Unlimited
     $settings.Priority = 7
     $settings.MultipleInstances = 1         # IgnoreNew
    
     # Trigger: SessionLock
     $trigger = $taskDef.Triggers.Create(11)  # 11 = TASK_TRIGGER_SESSION_STATE_CHANGE
     $trigger.StateChange = 7                 # 7 = SessionLock
     $trigger.Enabled = $true
    
     # Action: tsdiscon
     $action = $taskDef.Actions.Create(0)     # 0 = Exec
     $action.Path = "cmd.exe"
     $action.Arguments = "/c tsdiscon"
    
     # Register the task
     $rootFolder.RegisterTaskDefinition(
         "Disconnect on Lock",  # Task name
         $taskDef,
         6,                     # TASK_CREATE_OR_UPDATE
         $null, $null,          # No specific user/password
         3                      # TASK_LOGON_GROUP
     ) | Out-Null
     <!--NeedCopy-->
    

    Wenn Sie die geplante Aufgabe später entfernen müssen, können Sie den folgenden Befehl ausführen:

     Unregister-ScheduledTask -TaskName "Disconnect on Lock" -Confirm:$false
     <!--NeedCopy-->
    

Citrix Zugriffs- und Steuerungsebene

Workspace-Authentifizierung

Sie müssen Citrix Workspace so konfigurieren, dass Microsoft Entra ID oder SAML als IdP verwendet wird. Bei Bedarf finden Sie weitere Informationen in der Citrix Workspace-Dokumentation.

HINWEIS

Wenn Sie SAML als IdP verwenden möchten, müssen Sie sicherstellen, dass Ihr SAML-Anbieter ordnungsgemäß konfiguriert ist, um die Entra-basierte Authentifizierung zu unterstützen. Siehe SAML mit Microsoft Entra ID und Microsoft Entra-Identitäten für die Workspace-Authentifizierung.

Workspace-Zugriff verwalten

Wenn Ihre Benutzer über einen Webbrowser auf Citrix Workspace zugreifen, ist keine zusätzliche Konfiguration erforderlich. Wenn Sie den nativen Zugriff erzwingen möchten, können Sie Citrix Workspace so konfigurieren, dass Endbenutzer ihren Store über die Citrix Client-App aufrufen müssen unter der Zugriffskonfiguration des Stores.

Microsoft Entra Single Sign-On in Workspace aktivieren

Nachdem die Citrix Workspace-Authentifizierung konfiguriert wurde, müssen Sie die Verwendung von Microsoft Entra Single Sign-On aktivieren:

  1. Erstellen Sie einen Dienstprinzipal in Citrix Cloud:
    1. Gehen Sie zu Identitäts- und Zugriffsverwaltung > API-Zugriff > Dienstprinzipale.
    2. Klicken Sie auf Dienstprinzipal erstellen.
    3. Geben Sie einen Namen für den Dienstprinzipal ein und klicken Sie auf Weiter.
    4. Legen Sie den Zugriff für den Dienstprinzipal fest:
      1. Wählen Sie Vollzugriff aus, oder
      2. Wählen Sie Benutzerdefinierter Zugriff > Allgemein > Workspace-Konfiguration aus und klicken Sie dann auf Weiter.
    5. Legen Sie die Ablaufzeit des Geheimnisses fest und klicken Sie auf Weiter.
    6. Klicken Sie auf Fertig stellen.
    7. Speichern Sie sowohl das Geheimnis als auch die ID.
  2. Laden Sie das Citrix Workspace PowerShell-Modul herunter und extrahieren Sie es auf Ihre Workstation oder einen beliebigen Computer, den Sie für administrative Zwecke verwenden können.
  3. Öffnen Sie PowerShell auf dem Computer, auf den Sie das Citrix Workspace PowerShell-Modul heruntergeladen haben.
  4. Führen Sie die folgenden Befehle aus:

    Import-Module -Name “<extractedPath>\Citrix.Workspace.StoreConfigs.psm1”
    Set-StoreConfigurations -StoreUrl "https://<yourPrimaryStore>.cloud.com" -ClientId "<clientId>" -ClientSecret "<clientSecret>" -AzureAdSsoEnabled $True
    <!--NeedCopy-->
    
  5. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Einstellung ordnungsgemäß konfiguriert wurde:

    Get-StoreConfigurations -StoreUrl "https://<yourPrimaryStore>.cloud.com" -ClientId "<clientId>" -ClientSecret "<clientSecret>"
    <!--NeedCopy-->
    

Konfiguration der Bereitstellungsgruppe

  1. Wenn Ihre Sitzungshosts Microsoft Entra hybrid-verbunden sind, weisen Sie die virtuellen Apps und/oder Desktops den entsprechenden Microsoft Entra-Benutzern oder -Gruppen zu. Bestehende Zuweisungen zu Active Directory-Benutzern oder -Gruppen können entfernt werden, dies ist jedoch nicht erforderlich.
  2. Wenn Sie Ihre Microsoft Entra-verbundenen oder Microsoft Entra hybrid-verbundenen Sitzungshosts mit etwas anderem als Citrix Machine Creation Services, Citrix Provisioning oder Windows 365 bereitstellen, müssen Sie den Anmeldetyp für die Bereitstellungsgruppen konfigurieren:
    1. Wenn Sie das Citrix Remote PowerShell SDK noch nicht installiert haben, laden Sie es herunter und installieren Sie es auf Ihrer Workstation oder einem beliebigen Computer, den Sie für administrative Zwecke verwenden können.
    2. Öffnen Sie eine PowerShell-Eingabeaufforderung auf dem Computer, auf dem Sie das Citrix Remote PowerShell SDK installiert haben.
    3. Führen Sie die folgenden Befehle aus:

      Microsoft Entra-verbunden

      asnp citrix*
      Get-XDAuthentication
      Get-BrokerDesktopGroup -Name <dgName> | Set-BrokerDesktopGroup -MachineLogOnType "AzureAd"
      <!--NeedCopy-->
      

      Microsoft Entra hybrid-verbunden

      asnp citrix*
      Get-XDAuthentication
      Get-BrokerDesktopGroup -Name <dgName> | Set-BrokerDesktopGroup -MachineLogOnType "HybridAzureAd"
      <!--NeedCopy-->
      

Clientgerät

Stellen Sie sicher, dass die Systemanforderungen für die Clientgeräte erfüllt sind:

  1. Installieren Sie die erforderliche Version der Citrix Workspace-App, wie in den Systemanforderungen angegeben.
  2. Wenn Ihre Benutzer Hybridzugriff nutzen, stellen Sie sicher, dass die Citrix Web Extension installiert ist. Wenn Ihre Benutzer nativen oder Browserzugriff verwenden, ist die Citrix Web Extension nicht erforderlich.

Fehlerbehebung

Bekannte Probleme

  • Nach dem Aktivieren des Microsoft Entra Single Sign-On können Benutzer beim Starten ihres virtuellen Desktops den Microsoft-Fehler AADSTS293005 erhalten, der darauf hinweist, dass RDP protocol is not enabled for the requested resource application. Please configure the RemoteDesktopSecurityConfiguration property on resource service principal to enable RDP protocol. Um dieses Problem zu beheben, starten Sie die Citrix Workspace-App neu.
  • Benutzer können eine Verzögerung von 30 Sekunden beim Starten von Sitzungen feststellen, wenn ihre Citrix Workspace-App kein Microsoft Entra Single Sign-On unterstützt oder wenn sie Hybridzugriff ohne die Citrix Web Extension verwenden.
  • Benutzer können eine Verzögerung von 30 Sekunden beim Starten von Sitzungen feststellen, wenn Microsoft Entra Single Sign-On in Citrix Workspace aktiviert ist und die erforderliche Azure-Konfiguration nicht abgeschlossen wurde.

Wenn Single Sign-On fehlschlägt

Wenn Single Sign-On beim Zugriff auf virtuelle Desktops oder Anwendungen fehlschlägt, gehen Sie wie folgt vor:

  1. Bestätigen Sie, dass Microsoft Entra Single Sign-On in Citrix Workspace aktiviert ist.

  2. Bestätigen Sie, dass die vom Benutzer genutzte Zugriffsmethode unterstützt wird.

  3. Wenn der Benutzer Hybridzugriff nutzt, bestätigen Sie, dass die Citrix Web Extension installiert ist.

  4. Bestätigen Sie, dass auf dem Clientgerät die erforderliche Version der Citrix Workspace-App ausgeführt wird.

  5. Bestätigen Sie, dass auf Ihren Sitzungshosts der erforderliche Windows-Build ausgeführt wird.

  6. Bestätigen Sie, dass auf Ihren Sitzungshosts die erforderliche VDA-Version ausgeführt wird.

  7. Stellen Sie sicher, dass die Windows-Einstellung Always prompt for password upon connection auf den Sitzungshosts nicht aktiviert ist. Diese Einstellung ist standardmäßig deaktiviert und kann über Gruppenrichtlinien oder Intune unter Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Security konfiguriert werden. Sie können in der Registrierung überprüfen, ob die Einstellung aktiviert ist, indem Sie nach dem Wert fPromptForPassword unter HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services suchen. Wenn der Wert auf 1 gesetzt ist, ist die Einstellung aktiviert und Single Sign-On ist nicht verfügbar. Wenn der Wert fehlt oder auf 0 gesetzt ist, ist die Einstellung deaktiviert.

  8. Bestätigen Sie, dass die Einstellung AzureADJoinType auf den Sitzungshosts korrekt konfiguriert ist:
    • Schlüssel: HKLM\SYSTEM\CurrentControlSet\Control\Citrix
    • Werttyp: DWORD
    • Wertname: AzureADJoinType
    • Wertdaten: 1 (Microsoft Entra hybrid-verbunden); 2 (Microsoft Entra-verbunden)
  9. Stellen Sie sicher, dass die virtuellen Desktops oder Anwendungen in Citrix Studio Microsoft Entra-Identitäten anstelle von Active Directory-Identitäten zugewiesen sind.

  10. Bestätigen Sie, dass der Anmeldetyp der Bereitstellungsgruppen korrekt konfiguriert ist, indem Sie den folgenden PowerShell-Befehl ausführen:

    Get-BrokerDesktopGroup -Name <deliveryGroupName>
    <!--NeedCopy-->
    

    Für Microsoft Entra-verbundene Sitzungshosts muss MachineLogOnType auf AzureAd gesetzt sein. Für Microsoft Entra hybrid-verbundene Sitzungshosts muss MachineLogOnType auf HybridAzureAd gesetzt sein.

  11. Wenn Sie einen SAML IdP verwenden, bestätigen Sie, dass die erforderliche Konfiguration implementiert wurde.

  12. Bestätigen Sie, dass die Citrix Ressourcen- und Clientanwendungen im Microsoft Entra-Mandanten registriert sind.

  13. Bestätigen Sie, dass die Remote Desktop Security Configuration in der Citrix Ressourcenanwendung aktiviert ist.

  14. Bestätigen Sie, dass die Citrix Clientanwendung als genehmigte Clientanwendung in der Citrix Ressourcenanwendung hinzugefügt wurde.

  15. Wenn Ihre Sitzungshosts Microsoft Entra hybrid-verbunden sind, bestätigen Sie, dass ein Kerberos-Serverobjekt in der Active Directory-Domäne erstellt wurde, in der sich die Benutzer- und Computerkonten befinden.
Microsoft Entra Single Sign-On