Condividi tramite


Configurare l'accesso Single Sign-On per Desktop virtuale Azure con Microsoft Entra ID

L'accesso Single Sign-On (SSO) per Desktop virtuale Azure con Microsoft Entra ID offre un'esperienza di accesso semplice per gli utenti che si connettono agli host sessione. Quando si abilita l'accesso Single Sign-On, gli utenti eseguono l'autenticazione a Windows usando un token Microsoft Entra ID. Questo token consente l'uso dell'autenticazione senza password e dei provider di identità di terze parti federati con Microsoft Entra ID durante la connessione a un host di sessione, rendendo l'esperienza di accesso semplice.

L'accesso Single Sign-On con Microsoft Entra ID offre anche un'esperienza perfetta per le risorse basate su Microsoft Entra ID all'interno della sessione. Per altre informazioni sull'uso dell'autenticazione senza password all'interno di una sessione, vedere Autenticazione senza password nella sessione.

Per abilitare l'accesso Single Sign-On usando l'autenticazione di Microsoft Entra ID, è necessario completare cinque attività:

  1. Abilitare l'autenticazione Microsoft Entra ID per Remote Desktop Protocol (RDP).

  2. Nascondere la finestra di dialogo della richiesta di consenso.

  3. Creare un oggetto Server Kerberos, se Active Directory Domain Services fa parte dell'ambiente. Altre informazioni sui criteri sono incluse nella relativa sezione.

  4. Verificare i criteri di accesso condizionale.

  5. Configurare il pool di host per abilitare l'accesso Single Sign-On.

Prima di abilitare l'accesso Single Sign-On

Prima di abilitare l'accesso Single Sign-On, esaminare le informazioni seguenti per usarlo nell'ambiente in uso.

Comportamento di blocco della sessione

Quando l'accesso Single Sign-On tramite Microsoft Entra ID è abilitato e la sessione remota è bloccata dall'utente o dai criteri, è possibile scegliere se la sessione è disconnessa o la schermata di blocco remota è visualizzata. Il comportamento predefinito consiste nel disconnettere la sessione quando si blocca.

Quando il comportamento di blocco della sessione è impostato su disconnessione, viene visualizzata una finestra di dialogo per informare gli utenti che sono stati disconnessi. Gli utenti possono scegliere l'opzione Riconnetti dalla finestra di dialogo quando sono pronti a connettersi di nuovo. Questo comportamento viene eseguito per motivi di sicurezza e per garantire il supporto completo dell'autenticazione senza password. La disconnessione della sessione offre i vantaggi seguenti:

  • Esperienza di accesso coerente tramite Microsoft Entra ID quando necessario.

  • Esperienza di Single Sign-On e riconnessione senza richiesta di autenticazione quando consentita dai criteri di accesso condizionale.

  • Supporta l'autenticazione senza password, ad esempio passkey e dispositivi FIDO2, contrariamente alla schermata di blocco remota.

  • I criteri di accesso condizionale, inclusa l'autenticazione a più fattori e la frequenza di accesso, vengono rivalutati quando l'utente si riconnette alla sessione.

  • Può richiedere l'autenticazione a più fattori per tornare alla sessione e impedire agli utenti di sbloccare con un nome utente e una password semplici.

Se si vuole configurare il comportamento di blocco della sessione in modo che mostri la schermata di blocco remota invece di disconnettere la sessione, vedere Configurare il comportamento di blocco della sessione.

Account amministratore di dominio Active Directory con Single Sign-On

Negli ambienti con servizi di dominio Active Directory e account utente ibridi, i Criteri di replica password predefiniti nei controller di dominio di sola lettura negano la replica delle password per i membri dei gruppi di sicurezza Amministratori di dominio e Amministratori. Questo criterio impedisce a questi account amministratore di accedere agli host aggiunti all'ambiente ibrido di Microsoft Entra e potrebbe continuare a chiedere loro di immettere le credenziali. Impedisce inoltre agli account amministratore di accedere alle risorse locali che usano l'autenticazione Kerberos dagli host aggiunti a Microsoft Entra. Non è consigliabile connettersi a una sessione remota usando un account amministratore di dominio per motivi di sicurezza.

Se è necessario apportare modifiche a un host di sessione come amministratore, accedere all'host di sessione usando un account non amministratore, quindi usare l'opzione Esegui come amministratore o lo strumento Runas da un prompt dei comandi per passare a un amministratore.

Prerequisiti

Prima di abilitare l'accesso Single Sign-On, è necessario soddisfare i prerequisiti seguenti:

Abilitare l'autenticazione di Microsoft Entra per Remote Desktop Protocol (RDP)

È innanzitutto necessario consentire l'autenticazione di Microsoft Entra per Windows nel tenant di Microsoft Entra, che consente di emettere token di accesso RDP che consentono agli utenti di accedere agli host di sessione di Desktop virtuale Azure. Impostare la proprietà isRemoteDesktopProtocolEnabled su true nell'oggetto dell'entità servizio remoteDesktopSecurityConfiguration per le applicazioni Microsoft Entra seguenti:

Nome dell'applicazione ID applicazione
Desktop remoto Microsoft a4a365df-50f1-4397-bc59-1a1564b8bb9c
Accesso cloud Windows 270efc09-cd0d-444b-a71f-39af4910ec45

Importante

Come parte di un cambiamento imminente, stiamo passando da Desktop remoto Microsoft ad Accesso cloud di Windows, a partire dal 2024. Configurare entrambe le applicazioni ora assicura che l'utente sia pronto per la modifica.

Per configurare l'entità servizio, usare Microsoft Graph PowerShell SDK per creare un nuovo oggetto remoteDesktopSecurityConfiguration nell'entità servizio e impostare la proprietà isRemoteDesktopProtocolEnabled su true. È anche possibile usare l'API Microsoft Graph con uno strumento come Graph Explorer.

  1. Aprire Azure Cloud Shell nel portale di Azure con il tipo di terminale PowerShell oppure eseguire PowerShell nel dispositivo locale.

  1. Assicurarsi di aver installato Microsoft Graph PowerShell SDK dai prerequisiti, quindi importare i moduli Microsoft Graph Autenticazione and Applicazioni e connettersi a Microsoft Graph con gli ambiti Application.Read.All e Application-RemoteDesktopConfig.ReadWrite.All eseguendo i comandi seguenti:

    Import-Module Microsoft.Graph.Authentication
    Import-Module Microsoft.Graph.Applications
    
    Connect-MgGraph -Scopes "Application.Read.All","Application-RemoteDesktopConfig.ReadWrite.All"
    
  2. Ottenere l'ID oggetto per ogni entità servizio e archiviarli in variabili eseguendo i comandi seguenti:

    $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. Impostare la proprietà isRemoteDesktopProtocolEnabled su true eseguendo i comandi seguenti. Non è disponibile alcun output da questi comandi.

    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. Verificare che la proprietà isRemoteDesktopProtocolEnabled sia impostata su true eseguendo i comandi seguenti:

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

    L'output dovrebbe essere simile al seguente:

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

Per impostazione predefinita, quando l'accesso Single Sign-On è abilitato, gli utenti visualizzano una finestra di dialogo per consentire la connessione Desktop remoto durante la connessione a un nuovo host di sessione. Microsoft Entra ricorda fino a 15 host per 30 giorni prima di richiedere di nuovo. Se gli utenti visualizzano questa finestra di dialogo per consentire la connessione Desktop remoto, possono selezionare per connettersi.

È possibile nascondere questa finestra di dialogo configurando un elenco di dispositivi attendibili. Per configurare l'elenco dei dispositivi, creare uno o più gruppi in Microsoft Entra ID che contengono gli host di sessione, quindi aggiungere gli ID gruppo a una proprietà nelle entità servizio SSO, Microsoft Remote Desktop e Windows Cloud Login.

Suggerimento

È consigliabile usare un gruppo dinamico e configurare le regole di appartenenza dinamica per includere tutti gli host di sessione di Desktop virtuale Azure. È possibile usare i nomi dei dispositivi in questo gruppo, ma per un'opzione più sicura è possibile impostare e usare gli attributi di estensione del dispositivo usando l'API Microsoft Graph. Anche se i gruppi dinamici vengono normalmente aggiornati entro 5-10 minuti, i tenant di grandi dimensioni possono richiedere fino a 24 ore.

I gruppi dinamici richiedono la licenza Microsoft Entra ID P1 o la licenza di Intune per Education. Per altre informazioni, vedere Regole di appartenenza dinamica per gruppi.

Per configurare l'entità servizio, usare Microsoft Graph PowerShell SDK per creare un nuovo oggetto targetDeviceGroup nell'entità servizio con l'ID oggetto del gruppo dinamico e il nome visualizzato. È anche possibile usare l'API Microsoft Graph con uno strumento come Graph Explorer.

  1. Creare un gruppo dinamico in Microsoft Entra ID contenente gli host di sessione per i quali si vuole nascondere la finestra di dialogo. Prendere nota dell'ID oggetto del gruppo per il passaggio successivo.

  2. Nella stessa sessione di PowerShell creare un oggetto targetDeviceGroup eseguendo i comandi seguenti, sostituendo <placeholders> con i propri valori:

    $tdg = New-Object -TypeName Microsoft.Graph.PowerShell.Models.MicrosoftGraphTargetDeviceGroup
    $tdg.Id = "<Group object ID>"
    $tdg.DisplayName = "<Group display name>"
    
  3. Aggiungere il gruppo all'oggetto targetDeviceGroup eseguendo i comandi seguenti:

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

    L'output deve essere simile all'esempio seguente:

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

    Ripetere i passaggi 2 e 3 per ogni gruppo da aggiungere all'oggetto targetDeviceGroup, fino a un massimo di 10 gruppi.

  4. Se in un secondo momento è necessario rimuovere un gruppo di dispositivi dall'oggetto targetDeviceGroup, eseguire i comandi seguenti, sostituendo con <placeholders> i propri valori:

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

Creare un oggetto server Kerberos

Se gli host di sessione soddisfano i criteri seguenti, è necessario creare un oggetto server Kerberos. Per altre informazioni, vedere Abilitare l'accesso tramite chiave di sicurezza senza password alle risorse locali usando Microsoft Entra ID, in particolare la sezione Creare un oggetto Server Kerberos:

  • L'host di sessione è aggiunto a Microsoft Entra ibrido. Per completare l'autenticazione a un controller di dominio, è necessario disporre di un oggetto server Kerberos.

  • L'host di sessione è aggiunto a Microsoft Entra e l'ambiente contiene controller di dominio Active Directory. È necessario disporre di un oggetto server Kerberos per consentire agli utenti di accedere alle risorse locali, ad esempio condivisioni SMB e autenticazione integrata di Windows nei siti Web.

Importante

Se si abilita l'accesso Single Sign-On negli host sessione aggiunti all'ambiente ibrido di Microsoft Entra senza creare un oggetto server Kerberos, quando si tenta di connettersi a una sessione remota è possibile eseguire una delle operazioni seguenti:

  • Viene visualizzato un messaggio di errore che indica che la sessione specifica non esiste.
  • L'accesso Single Sign-On verrà ignorato e verrà visualizzata una finestra di dialogo di autenticazione standard per l'host sessione.

Per risolvere questi problemi, creare l'oggetto server Kerberos e quindi connettersi di nuovo.

Verificare i criteri di accesso condizionale

Quando l'accesso Single Sign-On è abilitato, viene introdotta una nuova app Microsoft Entra ID per autenticare gli utenti nell'host sessione. Se sono presenti criteri di accesso condizionale che si applicano quando si accede a Desktop virtuale Azure, esaminare le raccomandazioni per configurare l'autenticazione a più fattori per assicurarsi che gli utenti abbiano l'esperienza desiderata.

Configurare il pool di host per abilitare l'accesso Single Sign-On

Per abilitare l'accesso Single Sign-On nel pool di host, è necessario configurare la proprietà RDP seguente, che è possibile eseguire usando il portale di Azure o PowerShell. È possibile trovare la procedura per configurare le proprietà RDP in Personalizzare le proprietà RDP (Remote Desktop Protocol) per un pool di host.

  • Nel portale di Azure impostare l'accesso Single Sign-On di Microsoft Entra su Connections userà l'autenticazione di Microsoft Entra per fornire l'accesso Single Sign-On.

  • Per PowerShell impostare la proprietà enablerdsaadauth su 1.

Passaggi successivi