Citrix Virtual Apps and Desktops

Microsoft Entra 混合加入的计算机身份的身份池

本文介绍如何创建以下身份池:

  • Microsoft Entra 混合加入的目录
  • 已注册到 Microsoft Intune 的 Microsoft Entra 混合加入的目录

有关要求、限制和注意事项的信息,请参阅 Microsoft Entra hybrid joined

创建 Microsoft Entra 混合加入的目录

使用 Web Studio

以下信息是对 Create machine catalogs 中指南的补充。

在目录创建向导的计算机身份页面上:

  • 选择Microsoft Entra 混合加入。创建的计算机归某个组织所有,并使用属于该组织的 Active Directory 帐户登录。

  • 要将创建的计算机注册到 Microsoft Intune(包括 Configuration Manager)以进行设备管理,请选择使用 Configuration Manager 将计算机注册到 Microsoft Intune。为避免在目录创建过程中出现错误,请确保主映像满足以下要求:

    • 已安装 VDA 2405 或更高版本。
    • 已安装Configuration Manager 客户端,且站点代码未分配。有关详细信息,请参阅这篇 Microsoft 文章

注意:

如果选择Microsoft Entra 混合加入作为身份类型,目录中的每台计算机都必须具有相应的 AD 计算机帐户。

  • 点击“添加扩展属性”以便将唯一的自定义数据直接存储在您的 Entra ID 设备对象上。在“添加扩展属性”页面上,添加“扩展属性”和“”。

注意:”:

  • 最多可以添加 15 个扩展属性。
  • 名称和值必须唯一且不能为空。

添加或修改扩展属性

要更改或向现有 MCS 计算机目录添加其他扩展属性,或向没有服务帐户的 MCS 目录添加扩展属性,请使用“编辑计算机目录”向导。

  • 要更改或添加其他扩展属性,请导航到“Microsoft Entra 设备扩展属性”页面。单击铅笔图标,然后添加或更新扩展属性。
  • 要向没有 Microsoft Entra 服务帐户的 MCS 目录添加扩展属性:

    1. 导航到“服务帐户”页面。为 Microsoft Intra ID 选择一个 Microsoft Entra 服务帐户。
    2. 转到 Microsoft Entra 设备扩展属性页面,单击“添加扩展属性”。

使用 PowerShell

以下是与 Web Studio 中的操作等效的 PowerShell 步骤。有关如何使用远程 PowerShell SDK 创建目录的信息,请参阅 https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/

本地 AD 联接目录与 Microsoft Entra 混合联接目录之间的区别在于身份池和计算机帐户的创建。

要为 Microsoft Entra 混合联接目录创建身份池和帐户:

New-AcctIdentityPool -AllowUnicode -IdentityType "HybridAzureAD" -Domain "corp.local" -IdentityPoolName "HybridAADJoinedCatalog" -NamingScheme "HybridAAD-VM-##" -NamingSchemeType "Numeric" -OU "CN=AADComputers,DC=corp,DC=local" -Scope @() -ZoneUid "81291221-d2f2-49d2-ab12-bae5bbd0df05"
New-AcctIdentity -IdentityPoolName "HybridAADJoinedCatalog" -Count 10 -ADUserName "corp\admin1" -ADPassword $password
Set-AcctAdAccountUserCert -IdentityPoolName "HybridAADJoinedCatalog" -All -ADUserName "corp\admin1" -ADPassword $password
<!--NeedCopy-->

注意:”:

$password 是具有写入权限的 AD 用户帐户的匹配密码。

用于创建 Microsoft Entra 混合加入目录的所有其他命令与用于传统本地 AD 加入目录的命令相同。

要创建具有指定扩展属性的新身份池并将其与服务帐户关联,请运行以下命令:

New-AcctIdentityPool -IdentityPoolName HybridAzureAD -NamingScheme ACC#### -NamingSchemeType Numeric -Domain "abc.local" -IdentityType HybridAzureAD -ServiceAccountUid $serviceAccountUid -EntraIDExtensionAttributes @{"extensionAttribute1" = "val1"; "extensionAttribute2" = "val2"}
<!--NeedCopy-->

当虚拟机首次开机并加入 Microsoft Entra ID 后,虚拟机将其 Entra ID deviceId 报告给 MCS。

例如:要检查 EntraIDDeviceID,请运行 Get-AcctADAccountGet-AcctIdentity

Get-AcctADAccount -IdentityPoolName MyPool
<!--NeedCopy-->

重启后,对于持久性和非持久性虚拟机,EntraIDDeviceID 保持不变。

注意:

当您从目录中删除虚拟机但未从 Azure 中删除时,MCS 会自动删除关联的设备 ID 和扩展属性。

要编辑现有目录的扩展属性,请运行以下命令:

注意:

  • 将现有目录虚拟机升级到 VDA 2511 或更高版本后,需要重新启动。此重新启动允许虚拟机将其 Entra ID deviceId 报告给 MCS,从而使 MCS 能够配置虚拟机的扩展属性。
  • 现有目录应具有具有“Device.ReadWrite.All”权限的 AzureAD 类型服务帐户。

要添加一些新属性:

Set-AcctIdentityPool -IdentityPoolName MyPool -EntraIDExtensionAttributes @{"extensionAttribute1" = "val1"; "extensionAttribute2" = "val2"}
<!--NeedCopy-->

要删除一些现有属性

Set-AcctIdentityPool -IdentityPoolName MyPool -EntraIDExtensionAttributes @{}
<!--NeedCopy-->

或者

Set-AcctIdentityPool -IdentityPoolName MyPool -EntraIDExtensionAttributes @{extensionAttribute1 = ""; extensionAttribute2 = ""}
<!--NeedCopy-->

Set-AcctIdentityPool 也更新了已加入 Entra ID 且其身份中包含 EntraIDDeviceID 值的 VM 的 Entra ID 设备的扩展属性。

查看 Microsoft Entra 混合加入过程的状态

在 Web Studio 中,当交付组中已加入 Microsoft Entra 混合的计算机处于开机状态时,Microsoft Entra 混合加入过程的状态可见。要查看状态,请使用 搜索 识别这些计算机,然后对于每台计算机,在下部窗格的详细信息选项卡上检查计算机身份。以下信息可能会出现在计算机身份中:

  • 已加入 Microsoft Entra 混合
  • 尚未加入 Microsoft Entra ID

注意:

  • 计算机首次开机时,您可能会遇到 Microsoft Entra 混合加入延迟。这是由默认的计算机身份同步间隔(Microsoft Entra Connect 的 30 分钟)引起的。计算机仅在通过 Microsoft Entra Connect 将计算机身份同步到 Microsoft Entra ID 后才处于 Microsoft Entra 混合加入状态。
  • 如果计算机未能处于 Microsoft Entra 混合加入状态,它们将不会注册到交付控制器。它们的注册状态显示为初始化

此外,使用 Web Studio,您可以了解计算机不可用的原因。为此,请在搜索节点上单击一台计算机,检查下部窗格中详细信息选项卡上的注册,然后阅读工具提示以获取更多信息。

故障排除

如果计算机未能加入 Microsoft Entra 混合,请执行以下操作:

  • 检查计算机帐户是否已通过 Microsoft Microsoft Entra ID 门户同步到 Microsoft Entra ID。如果已同步,则显示尚未加入 Microsoft Entra ID,表示注册状态待定。

    要将计算机帐户同步到 Microsoft Entra ID,请确保:

    • 计算机帐户位于配置为与 Microsoft Entra ID 同步的 OU 中。即使计算机帐户位于配置为同步的 OU 中,没有 userCertificate 属性的计算机帐户也不会同步到 Microsoft Entra ID。
    • userCertificate 属性在计算机帐户中填充。使用 Active Directory Explorer 查看该属性。
    • 在创建计算机帐户后,Microsoft Entra Connect 必须至少同步一次。如果未同步,请在 Microsoft Entra Connect 计算机的 PowerShell 控制台中手动运行 Start-ADSyncSyncCycle -PolicyType Delta 命令以触发立即同步。
  • 通过查询 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix 下的 DeviceKeyPairRestored 值,检查 Citrix 托管设备密钥对是否已正确推送到计算机以进行 Microsoft Entra 混合加入。

    验证该值是否为 1。如果不是,可能的原因是:

    • 与预配方案关联的身份池的 IdentityType 未设置为 HybridAzureAD。您可以通过运行 Get-AcctIdentityPool 来验证这一点。
    • 未通过计算机目录的相同预配方案预配计算机。
    • 计算机未加入本地域。加入本地域是 Microsoft Entra 混合加入的先决条件。
  • 通过在 MCS 预配的计算机上运行 dsregcmd /status /debug 命令来检查诊断消息。

    • 如果 Microsoft Entra 混合加入成功,则命令行输出中的 AzureAdJoinedDomainJoinedYES

    • 如果不是,请参阅 Microsoft 文档以排查问题:https://docs.microsoft.com/zh-cn/azure/active-directory/devices/troubleshoot-hybrid-join-windows-current

    • 如果您收到错误消息 Server Message: The user certificate is not found on the device with id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,请运行以下 PowerShell 命令来修复用户证书:

       Repair-AcctIdentity -IdentityAccountName TEST\VM1 -Target UserCertificate
       <!--NeedCopy-->
      

      有关用户证书问题的更多信息,请参阅 CTX566696

创建已注册到 Microsoft Intune 的 Microsoft Entra 混合加入目录

您可以为已注册到 Microsoft Intune 的 Microsoft Entra 混合加入目录创建启用共同管理的目录,以用于持久性单会话和多会话 VM。您可以使用 Studio 和 PowerShell 创建启用共同管理的目录。

使用 Web Studio

以下信息是对 创建计算机目录 中指南的补充。

计算机目录设置向导中:

  • 计算机身份页面上,选择Microsoft Entra 混合加入,然后选择使用 Configuration Manager 将计算机注册到 Microsoft Intune。通过此操作,Configuration Manager 和 Microsoft Intune(即共同管理)将管理 VM。

使用 PowerShell

以下是与 Studio 中的步骤等效的 PowerShell 步骤。

要使用远程 PowerShell SDK 将计算机注册到 Microsoft Intune 并使用 Configuration Manager,请在 New-AcctIdentityPool 中使用 DeviceManagementType 参数。此功能要求目录已加入 Microsoft Entra 混合,并且 Microsoft Entra ID 拥有正确的 Microsoft Intune 许可证。

Microsoft Entra 混合加入目录与启用共同管理的目录之间的区别在于身份池的创建。例如:

New-AcctIdentityPool -AllowUnicode -DeviceManagementType "IntuneWithSCCM" IdentityType="HybridAzureAD" -IdentityPoolName "CoManagedCatalog" -NamingScheme "CoManaged-VM-##" -NamingSchemeType "Numeric" -Scope @() -ZoneUid "81291221-d2f2-49d2-ab12-bae5bbd0df05"
<!--NeedCopy-->

故障排除

如果计算机未能注册到 Microsoft Intune 或未能达到共同管理状态,请执行以下操作:

  • 检查 Intune 许可证

    检查您的 Microsoft Entra 租户是否已分配适当的 Intune 许可证。有关 Microsoft Intune 的许可证要求,请参阅 Microsoft Intune 许可

  • 检查 Microsoft Entra 混合加入状态

    检查 MCS 预配的计算机是否已加入 Microsoft Entra 混合。如果计算机未加入 Microsoft Entra 混合,则不符合共同管理的条件。有关 Microsoft Entra 混合加入问题的故障排除,请参阅 故障排除

  • 检查共同管理资格

    • 检查 MCS 预配的计算机是否已正确分配到预期的 Configuration Manager 站点。要获取分配的站点,请在受影响的计算机上运行以下 PowerShell 命令。

       (New-Object -ComObject "Microsoft.SMS.Client").GetAssignedSite()
       <!--NeedCopy-->
      
    • 如果未向 VM 分配站点,请使用以下命令检查 Configuration Manager 站点是否可以自动发现。

       (New-Object -ComObject "Microsoft.SMS.Client").AutoDiscoverSite()
       <!--NeedCopy-->
      
    • 如果无法发现站点代码,请确保在 Configuration Manager 环境中正确配置了边界和边界组。有关详细信息,请参阅注意事项

    • 检查 C:\Windows\CCM\Logs\ClientLocation.log 以了解任何 Configuration Manager 客户端站点分配问题。

    • 检查计算机的共同管理状态。在受影响的计算机上打开 Configuration Manager 控制面板,然后转到常规选项卡。共同管理属性的值必须为已启用。如果不是,请检查 C:\Windows\CCM\Logs\CoManagementHandler.log 下的日志。

  • 检查 Intune 注册

    即使满足所有先决条件,计算机也可能无法注册到 Microsoft Intune。请检查 应用程序和服务日志 > Microsoft > Windows > DeviceManagement-Enterprise-Diagnostics-Provider 下的 Windows 事件日志,以查找 Intune 注册问题。

Microsoft Entra 混合加入的计算机身份的身份池