共用方式為


Azure 虛擬桌面 (傳統) PowerShell

重要

此內容適用於 Azure 虛擬桌面 (傳統),不支援 ARM Azure 虛擬桌面物件。 如果您嘗試管理 Azure Resource Manager Azure 虛擬桌面物件,請參閱這篇文章

使用本文來解決搭配 Azure 虛擬桌面使用 PowerShell 時的錯誤和問題。 如需遠端桌面服務 PowerShell 的詳細資訊,請參閱 Azure 虛擬桌面 PowerShell

提供意見反應

請造訪 Azure 虛擬桌面 Tech Community,與產品小組和活躍的社群成員一起討論 Azure 虛擬桌面服務。

Azure 虛擬桌面設定期間使用的 PowerShell 命令

本節列出在設定 Azure 虛擬桌面時通常會使用的 PowerShell 命令,並提供在使用時可能發生的問題解決方法。

錯誤:Add-RdsAppGroupUser命令 -- 指定的 UserPrincipalName 已指派給指定主機集區中的 RemoteApp 應用程式群組

Add-RdsAppGroupUser -TenantName <TenantName> -HostPoolName <HostPoolName> -AppGroupName 'Desktop Application Group' -UserPrincipalName <UserName>

原因: 所使用的使用者名稱已指派給不同類型的應用程式群組。 使用者無法同時指派給相同工作階段主機集區下的遠端桌面和 RemoteApp 應用程式群組。

修正: 如果使用者同時需要 RemoteApp 和桌面,請建立不同的主機集區或僅授與使用者對遠端桌面的存取權,這會允許在工作階段主機 VM 上使用任何應用程式。

錯誤: Add-RdsAppGroupUser 命令 -- 指定的 UserPrincipalName 不存在於與遠端桌面租用戶相關聯的 Microsoft Entra ID 中

Add-RdsAppGroupUser -TenantName <TenantName> -HostPoolName <HostPoolName> -AppGroupName "Desktop Application Group" -UserPrincipalName <UserPrincipalName>

原因: 在繫結至 Azure 虛擬桌面租用戶的 Microsoft Entra 中,找不到 -UserPrincipalName 所指定的使用者。

修正:確認下列清單中的項目。

  • 使用者會同步處理至 Microsoft Entra ID。
  • 使用者不會繫結至企業對消費者 (B2C) 或企業對企業 (B2B) 商務。
  • Azure 虛擬桌面租用戶會繫結至正確的 Microsoft Entra ID。

錯誤:Get-RdsDiagnosticActivities -- 使用者未經授權,無法查詢管理服務

Get-RdsDiagnosticActivities -ActivityId <ActivityId>

原因:-TenantName 參數

修正:使用 -TenantName <TenantName> 發出 Get-RdsDiagnosticActivities。

錯誤:Get-RdsDiagnosticActivities -- 使用者未經授權,無法查詢管理服務

Get-RdsDiagnosticActivities -Deployment -username <username>

原因:使用 -Deployment 切換。

修正:-Deployment 切換只能由部署管理員使用。 這些管理員通常是遠端桌面服務/Azure 虛擬桌面小組的成員。 將 -Deployment 參數取代為 -TenantName <TenantName>。

錯誤:New-RdsRoleAssignment -- 使用者未經授權,無法查詢管理服務

原因 1:使用的帳戶沒有租用戶的遠端桌面服務擁有者權限。

修正 1:具有遠端桌面服務擁有者權限的使用者必須執行角色指派。

原因 2: 所使用的帳戶具有遠端桌面服務擁有者權限,但不屬於租用戶的 Microsoft Entra ID,或沒有權限可查詢使用者所在的 Microsoft Entra ID。

修正 2:具有擁有者權限的使用者必須執行角色指派。

注意

New-RdsRoleAssignment 無法將權限授與不存在於 Microsoft Entra ID 內的使用者。

錯誤:無法刪除 SessionHostPool

當您執行下列命令以嘗試移除工作階段主機時,通常會發生此錯誤。

Remove-RdsHostPool -TenantName <TenantName> -Name <HostPoolName>

原因:如果您在刪除主機集區的分葉物件之前執行命令,命令將無法運作。

修正:執行下列命令以刪除工作階段主機。

Get-RdsSessionHost-TenantName <TenantName> -Hostpook <HostPoolName> | Remove-RdsSessionHost -Force

即使已指派使用者,使用 force 命令可讓您刪除工作階段主機。

下一步