Tutorial: Creación de entidades de servicio y asignaciones de roles con PowerShell en Azure Virtual Desktop (clásico)

Importante

Este contenido se aplica a Azure Virtual Desktop (clásico), que no admite objetos de Azure Resource Manager.

Las entidades de servicio son identidades que puede crear en Microsoft Entra ID para asignar roles y permisos para un propósito específico. En Azure Virtual Desktop puede crear una entidad de servicio para:

  • Automatizar tareas de administración específicas de Azure Virtual Desktop.
  • Usarla como credenciales en lugar de los usuarios necesarios para la autenticación multifactor al ejecutar cualquier plantilla de Azure Resource Manager para Azure Virtual Desktop.

En este tutorial, aprenderá a:

  • Cree una entidad de servicio en Microsoft Entra ID.
  • Crear una asignación de roles en Azure Virtual Desktop.
  • Iniciar sesión en Azure Virtual Desktop con la entidad de servicio.

Prerrequisitos

Antes de que pueda crear entidades de servicio y asignaciones de roles, debe hacer lo siguiente:

  1. Siga los pasos para instalar el módulo de PowerShell de Azure Az.

  2. Descargue e importe el módulo de PowerShell para Azure Virtual Desktop.

Importante

Seguir todas las instrucciones de este artículo en la misma sesión de PowerShell. Es posible que el proceso no funcione si interrumpe la sesión de PowerShell al cerrar la ventana y volver a abrirla más adelante.

Creación de una entidad de servicio en Microsoft Entra ID

Una vez cumplidos los requisitos previos en la sesión de PowerShell, ejecute los siguientes cmdlets de PowerShell para crear una entidad de servicio multiinquilino en 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

Visualización de las credenciales en PowerShell

Antes de crear la asignación de roles para la entidad de servicio, consulte sus credenciales y escríbalas para futura referencia. La contraseña es especialmente importante, porque no se podrá recuperar una vez que se cierre esta sesión de PowerShell.

Estos son los tres valores que debe anotar y los cmdlets que debe ejecutar para obtenerlos:

  • Contraseña:

    $svcPrincipalCreds.SecretText
    
  • Identificador de inquilino:

    $aadContext.Tenant.Id
    
  • Identificador de aplicación:

    $svcPrincipal.AppId
    

Creación de una asignación de roles en Azure Virtual Desktop

A continuación debe crear una asignación de roles para que la entidad de servicio pueda iniciar sesión en Azure Virtual Desktop. Asegúrese de que iniciar sesión con una cuenta que tenga permisos para crear la asignación de roles.

En primer lugar y, si aún no lo ha hecho, descargue e importe el módulo de PowerShell para Azure Virtual Desktop que se usará en la sesión de PowerShell.

Ejecute los siguientes cmdlets de PowerShell para conectarse a Azure Virtual Desktop y mostrar los inquilinos.

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

Cuando encuentre el nombre del inquilino para el que desea crear una asignación de roles, úselo en el siguiente cmdlet:

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

Inicio de sesión con la entidad de servicio

Después de crear una asignación de roles para la entidad de servicio, asegúrese de que esta puede iniciar sesión en Azure Virtual Desktop mediante la ejecución del siguiente cmdlet:

$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 puede iniciar sesión correctamente, la entidad de servicio se configura correctamente.

Pasos siguientes

Una vez que ha creado la entidad de servicio y le ha asignado un rol en el inquilino de Azure Virtual Desktop, puede usarla para crear un grupo host. Para más información acerca de los grupos host, continúe con el tutorial de creación de un grupo host en Azure Virtual Desktop.