Esercitazione: Creare entità servizio e assegnazioni di ruolo con PowerShell in Desktop virtuale Azure (versione classica)

Importante

Questo contenuto si applica a Desktop virtuale Azure (versione classica), che non supporta gli oggetti Desktop virtuale Azure Resource Manager.

Le entità servizio sono identità che è possibile creare in Microsoft Entra ID per assegnare ruoli e autorizzazioni per uno scopo specifico. In Desktop virtuale Azure è possibile creare un'entità servizio per:

  • Automatizzare specifiche attività di gestione di Desktop virtuale Azure.
  • Usare come credenziali al posto degli utenti necessari per l'autenticazione a più fattori quando si esegue un modello di Azure Resource Manager per Desktop virtuale Azure.

In questa esercitazione, scopri come:

  • Creare un'entità servizio in Microsoft Entra ID.
  • Creare un'assegnazione di ruolo in Desktop virtuale Azure.
  • Accedere a Desktop virtuale Azure usando l'entità servizio.

Prerequisiti

Prima di poter creare entità servizio e assegnazioni di ruolo, è necessario eseguire le operazioni seguenti:

  1. Seguire la procedura per installare il modulo Azure Az PowerShell.

  2. Scaricare e importare il modulo PowerShell di Desktop virtuale Azure.

Importante

Seguire tutte le istruzioni di questo articolo nella stessa sessione di PowerShell. Il processo potrebbe non funzionare se si interrompe la sessione di PowerShell chiudendo la finestra e riaprendola in un secondo momento.

Creare un'entità servizio in Microsoft Entra ID

Dopo aver soddisfatto i prerequisiti della sessione di PowerShell, eseguire i cmdlet di PowerShell seguenti per creare un'entità servizio multi-tenant in Azure.

Import-Module Az.Resources
Connect-AzConnect
$aadContext = Get-AzContext
$svcPrincipal = New-AzADApplication -AvailableToOtherTenants $true -DisplayName "Azure Virtual Desktop Svc Principal"
$svcPrincipalCreds = New-AzADAppCredential -ObjectId $svcPrincipal.Id

Visualizzare le credenziali in PowerShell

Prima di creare l'assegnazione di ruolo per l'entità servizio, visualizzare le credenziali e annotarle per riferimento futuro. La password è particolarmente importante perché non sarà possibile recuperarla dopo aver chiuso questa sessione di PowerShell.

Ecco i tre valori da annotare e i cmdlet che è necessario eseguire per ottenerli:

  • Password:

    $svcPrincipalCreds.SecretText
    
  • ID tenant:

    $aadContext.Tenant.Id
    
  • ID applicazione:

    $svcPrincipal.AppId
    

Creare un'assegnazione di ruolo in Desktop virtuale Azure

Successivamente, è necessario creare un'assegnazione di ruolo in modo che l'entità servizio possa accedere a Desktop virtuale Azure. Assicurarsi di accedere con un account che abbia le autorizzazioni per creare assegnazioni di ruolo.

Prima di tutto, scaricare e importare il modulo PowerShell di Desktop virtuale Azure da usare nella sessione di PowerShell, se non è già stato fatto.

Eseguire i cmdlet di PowerShell seguenti per connettersi a Desktop virtuale Azure e visualizzare i tenant.

Add-RdsAccount -DeploymentUrl "https://rdbroker.wvd.microsoft.com"
Get-RdsTenant

Quando si individua il nome del tenant per cui si vuole creare un'assegnazione di ruolo, usare tale nome nel cmdlet seguente:

$myTenantName = "<Azure Virtual Desktop Tenant Name>"
New-RdsRoleAssignment -RoleDefinitionName "RDS Owner" -ApplicationId $svcPrincipal.AppId -TenantName $myTenantName

Accedere con l'entità servizio

Dopo aver creato un'assegnazione di ruolo per l'entità servizio, assicurarsi che l'entità servizio possa accedere a Desktop virtuale Azure eseguendo il cmdlet seguente:

$creds = New-Object System.Management.Automation.PSCredential($svcPrincipal.AppId, (ConvertTo-SecureString $svcPrincipalCreds.Value -AsPlainText -Force))
Add-RdsAccount -DeploymentUrl "https://rdbroker.wvd.microsoft.com" -Credential $creds -ServicePrincipal -AadTenantId $aadContext.Tenant.Id

Se è possibile accedere correttamente, l'entità servizio è configurata correttamente.

Passaggi successivi

Dopo aver creato l'entità servizio e aver assegnato un ruolo nel tenant di Desktop virtuale Azure, è possibile usarla per creare un pool di host. Per altre informazioni sui pool di host, passare all'esercitazione per la creazione di un pool di host in Desktop virtuale Azure.