你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
教程:使用 PowerShell 在 Azure 虚拟桌面(经典)中创建服务主体和角色分配
重要
此内容适用于 Azure 虚拟桌面(经典),后者不支持 Azure 资源管理器 Azure 虚拟桌面对象。
服务主体是可以在 Microsoft Entra ID 中创建的、用于根据特定目的分配角色和权限的标识。 在 Azure 虚拟桌面中,可以创建服务主体来实现以下目的:
- 自动执行特定的 Azure 虚拟桌面管理任务。
- 运行任何 Azure 虚拟桌面的 Azure 资源管理器模板时,将服务主体用作凭据,而无需让用户执行 MFA。
本教程介绍如何执行下列操作:
- 在 Microsoft Entra ID 中创建一个服务主体。
- 在 Azure 虚拟桌面中创建角色分配。
- 使用服务主体登录到 Azure 虚拟桌面。
先决条件
在创建服务主体和角色分配之前,需要先完成以下操作:
重要
在同一 PowerShell 会话中,遵照本文中的所有说明操作。 如果通过关闭窗口并稍后重新打开该窗口来中断 PowerShell 会话,则该过程可能无法运行。
在 Microsoft Entra ID 中创建一个服务主体
在满足 PowerShell 会话中的先决条件之后,运行以下 PowerShell cmdlet,以在 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
在 PowerShell 中查看凭据
在为服务主体创建角色分配之前,请查看凭据并将其记下以供将来参考。 密码特别重要,因为关闭此 PowerShell 会话后将无法检索密码。
下面是应该记下的三个值,以及用于获取这些值的 cmdlet:
密码:
$svcPrincipalCreds.SecretText
租户 ID:
$aadContext.Tenant.Id
应用程序 ID:
$svcPrincipal.AppId
在 Azure 虚拟桌面中创建角色分配
接下来,需要创建角色分配,使服务主体可以登录到 Azure 虚拟桌面。 请确保使用有权创建角色分配的帐户登录。
首先下载并导入 Azure 虚拟桌面 PowerShell 模块(如果尚未这样做),方便在 PowerShell 会话中使用。
运行以下 PowerShell cmdlet 以连接到 Azure 虚拟桌面,并显示你的租户。
Add-RdsAccount -DeploymentUrl "https://rdbroker.wvd.microsoft.com"
Get-RdsTenant
找到要为其创建角色分配的租户的租户名称时,请在以下 cmdlet 中使用该名称:
$myTenantName = "<Azure Virtual Desktop Tenant Name>"
New-RdsRoleAssignment -RoleDefinitionName "RDS Owner" -ApplicationId $svcPrincipal.AppId -TenantName $myTenantName
使用服务主体登录
为服务主体创建角色分配后,请通过运行以下 cmdlet,确保该服务主体可以登录到 Azure 虚拟桌面:
$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
如果你可以成功登录,则你的服务主体配置正确。
后续步骤
创建了服务主体并在 Azure 虚拟桌面租户中为其分配角色后,可以用它来创建主机池。 若要详细了解主机池,请继续学习有关在 Azure 虚拟桌面中创建主机池的教程。