Tutoriel : Créer des principaux de service et des attributions de rôles avec PowerShell dans Azure Virtual Desktop (classique)

Important

Ce contenu s’applique à Azure Virtual Desktop (classique), qui ne prend pas en charge les objets Azure Virtual Desktop pour Azure Resource Manager.

Les principaux de service sont des identités, que vous pouvez créer dans Microsoft Entra ID pour attribuer des rôles et des autorisations dans un but précis. Dans Azure Virtual Desktop, vous pouvez créer un principal de service pour :

  • Automatisez des tâches de gestion Azure Virtual Desktop spécifiques.
  • L’utiliser comme informations d’identification à la place des utilisateurs avec MFA (authentification multifacteur) obligatoire lors de l’exécution de tout modèle Azure Resource Manager pour Azure Virtual Desktop.

Dans ce tutoriel, vous allez apprendre à effectuer les actions suivantes :

  • Créez un principal de service dans Microsoft Entra ID.
  • Créez une attribution de rôle dans Azure Virtual Desktop.
  • Se connecter à Azure Virtual Desktop avec le principal de service.

Prérequis

Avant de pouvoir créer des principaux de service et des attributions de rôles, vous devez effectuer les actions suivantes :

  1. Suivez les étapes pour installer le module Azure Az PowerShell.

  2. Téléchargez et importez le module PowerShell Azure Virtual Desktop.

Important

Suivez toutes les instructions de cet article dans la même session PowerShell. Le processus risque de ne pas fonctionner si vous interrompez votre session PowerShell en fermant la fenêtre et en la rouvrant ultérieurement.

Créer un principal de service dans Microsoft Entra ID

Quand vous avez rempli les prérequis dans votre session PowerShell, exécutez les applets de commande PowerShell suivantes pour créer un principal de service multilocataire dans 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

Afficher vos informations d’identification dans PowerShell

Avant de créer l’attribution de rôle pour votre principal du service, consultez vos informations d’identification et notez-les pour vous y référer ultérieurement. Le mot de passe est particulièrement important parce que vous ne pouvez pas le récupérer après avoir fermé cette session PowerShell.

Voici les trois valeurs que vous devez noter et les applets de commande que vous devez exécuter pour les obtenir :

  • Mot de passe :

    $svcPrincipalCreds.SecretText
    
  • ID de locataire :

    $aadContext.Tenant.Id
    
  • ID d’application :

    $svcPrincipal.AppId
    

Créer une attribution de rôle dans Azure Virtual Desktop

Ensuite, vous devez créer une attribution de rôle afin que le principal du service puisse se connecter à Azure Virtual Desktop. Veillez à vous connecter avec un compte qui dispose des autorisations nécessaires pour créer des attributions de rôle.

Si ce n'est déjà fait, commencez par télécharger et importer le module PowerShell Azure Virtual Desktop à utiliser dans votre session PowerShell.

Exécutez les applets de commande PowerShell suivantes pour vous connecter à Azure Virtual Desktop et afficher vos locataires.

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

Quand vous trouvez le nom du locataire pour lequel vous souhaitez créer une attribution de rôle, utilisez ce nom dans l’applet de commande suivante :

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

Se connecter avec le principal de service

Après avoir créé une attribution de rôle pour le principal de service, vérifiez que le principal de service peut se connecter à Azure Virtual Desktop en exécutant l’applet de commande suivante :

$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

Si vous pouvez vous connecter correctement, votre principal de service est correctement configuré.

Étapes suivantes

Après avoir créé le principal du service et l’avoir affecté à un rôle dans votre locataire Azure Virtual Desktop, vous pouvez l’utiliser pour créer un pool d’hôtes. Pour en savoir plus sur les pools d’hôtes, passez au tutoriel concernant la création d’un pool d’hôtes dans Azure Virtual Desktop.