Citrix DaaS™

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

本文介绍了如何使用 Citrix DaaS 创建 Microsoft Entra 混合加入计算机身份的身份池。

有关要求、限制和注意事项的信息,请参阅Microsoft Entra 混合加入

使用 Studio

以下信息是对创建计算机目录中指南的补充。要创建 Microsoft Entra 混合加入目录,请遵循该文章中的一般指南,同时注意 Microsoft Entra 混合加入目录特有的详细信息。

在目录创建向导中:

  1. 计算机身份页面上:

    1. 将身份类型选择为Microsoft Entra 混合加入
        1. 在“高级配置”下,单击选择服务帐户并从列表中选择一个可用的服务帐户。如果没有可供计算机身份加入的合适服务帐户,您可以创建一个服务帐户。有关服务帐户的信息,请参阅Microsoft Entra 服务帐户
            1. 单击添加扩展属性以将唯一的自定义数据直接存储在您的 Entra ID 设备对象上。在添加扩展属性页面上,添加扩展属性

      注意:

             -  您最多可以添加 15 个扩展属性。
             -  名称和值必须唯一且不能为空。
      
        1. 选择一个 Active Directory 帐户选项:
      • 创建新的 Active Directory 帐户
        • 如果您选择创建新的 Active Directory 帐户并使用现有身份池创建新帐户,则选择这些帐户的域并指定帐户命名方案。
        • 如果您选择创建新的 Active Directory 帐户并使用现有身份池创建新帐户,则从列表中选择一个身份池。
      • 使用现有 Active Directory 帐户:您可以浏览或从 CSV 文件导入,并重置密码或为所有帐户指定相同的密码。
    2. 单击下一步
  2. 域凭据页面上,选择一个服务帐户或手动输入凭据。Microsoft Entra 混合加入身份池也可以与本地 AD 服务帐户关联。有关服务帐户的信息,请参阅本地 Active Directory 服务帐户

添加或修改扩展属性

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

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

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

使用 PowerShell

以下 PowerShell 步骤等同于 Studio 中的操作。

本地 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-AcctADAccount -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 加入目录的命令相同。

您还可以通过将本地服务帐户与身份池关联,将本地服务帐户与 MCS 创建的计算机目录关联。您可以创建身份池或更新现有身份池以将其与服务帐户关联。

例如:要创建新的身份池并将其与服务帐户关联,请运行以下命令:


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" -ServiceAccountUid $serviceAccountUid

<!--NeedCopy-->

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


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 和扩展属性。

更新现有身份池

例如:要更新现有身份池以将其与服务帐户关联,请运行以下命令:


-  $identityPoolUid = (Get-ProvScheme -ProvisioningSchemeName "MyProvScheme").IdentityPoolUid

Set-AcctIdentityPool -IdentityPoolUid $identityPoolUid -ServiceAccountUid $serviceAccountUid

<!--NeedCopy-->

注意:

$serviceAccountUid 必须是本地 Active Directory 服务帐户的有效 UID。

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

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

-  要添加一些新属性:

    -  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 目录

您还可以使用准备好的映像创建混合 Microsoft Entra 目录。有关创建映像定义、映像版本和准备好的映像版本规范的完整 PowerShell 命令集,请参阅:

创建准备好的映像版本规范后,创建身份池和计算机目录。例如:


New-AcctIdentityPool -IdentityPoolName "mypool" -NamingScheme ACC##  -NamingSchemeType "Numeric"  -ZoneUid $zoneuid -Domain $domainName -OU "OU=HAAD Computers,DC=haad,DC=link" -IdentityType "HybridAzureAD"

New-ProvScheme -ProvisioningSchemeName <name> -ImageVersionSpecUid <preparedVersionSpecUid> -HostingUnitUid <hostingUnitUid> -IdentityPoolUid <IdentityPoolUid> [-CleanOnBoot] -NetworkMapping @{"0"="XDHyp:\HostingUnits\<hostingunitName>\<region>.region\virtualprivatecloud.folder\<resourcegroupName>.resourcegroup\<vnetName>.virtualprivatecloud\<sunNetName>.network"} -ServiceOffering <serviceofferingPath> [-MachineProfile <machineProfilePath>] [-CustomProperties <>]

<!--NeedCopy-->

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

在 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 混合加入状态,则它们不会向 Delivery Controller 注册。它们的注册状态显示为初始化

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

故障排除

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

-  检查计算机帐户是否已通过 Microsoft Microsoft Entra 门户同步到 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 值,检查用于混合 Microsoft Entra 加入的 Citrix 托管设备密钥对是否已正确推送到计算机。

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

  • 与预配方案关联的身份池的 IdentityType 未设置为 HybridAzureAD。您可以通过运行 Get-AcctIdentityPool 来验证这一点。
  • 计算机未通过计算机目录的相同预配方案进行预配。
  • 计算机未加入本地域。加入本地域是混合 Microsoft Entra 加入的先决条件。

  • 通过在 MCS 预配的计算机上运行 dsregcmd /status /debug 命令来检查诊断消息。

  • 如果混合 Microsoft Entra 加入成功,则命令行输出中的 AzureAdJoinedDomainJoinedYES
  • 如果不是,请参阅 Microsoft 文档以排查问题:https://docs.microsoft.com/en-us/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 Entra 混合加入计算机身份的身份池