Linux 虚拟投递代理 2407

使用 Azure Active Directory 进行身份验证

注意:

此功能仅适用于 Azure 托管的 VDA。

  • 根据您的需求,您可以在 Azure 中部署两种类型的 Linux VDA:

  • 已加入 Azure AD DS 的 VM。这些 VM 已加入 Azure Active Directory (AAD) 域服务 (DS) 托管域。用户使用其域凭据登录到 VM。
  • 未加入域的 VM。这些 VM 与 AAD 身份服务集成以提供用户身份验证。用户使用其 AAD 凭据登录到 VM。

  • 有关 AAD DS 和 AAD 的更多信息,请参阅这篇 Microsoft 文章

本文将向您展示如何在未加入域的 VDA 上启用和配置 AAD 身份服务。

支持的发行版

  • Ubuntu 22.04、20.04
    • RHEL 8.10、8.9、8.8
    • SUSE 15.5

有关更多信息,请参阅这篇 Microsoft 文章

步骤 1:在 Azure 门户上创建模板 VM

创建模板 VM 并在 VM 上安装 Azure CLI。

  1. 在 Azure 门户上,创建模板 VM。请务必在单击“查看 + 创建”之前,在“管理”选项卡上选择“使用 Azure AD 登录”

    Enable login with AAD

  2. 在模板 VM 上安装 Azure CLI。 有关更多信息,请参阅这篇 Microsoft 文章

步骤 2:在模板 VM 上准备主映像

要准备主映像,请按照步骤 3:准备主映像中的说明进行操作。

步骤 3:将模板 VM 设置为未加入域模式

创建主映像后,请按照以下步骤将 VM 设置为未加入域模式:

  1. 从命令提示符运行以下脚本。

    Modify /var/xdl/mcs/mcs_util.sh
    <!--NeedCopy-->
    
  2. 找到 function read_non_domain_joined_info(),然后将 NonDomainJoined 的值更改为 2。有关示例,请参阅以下代码块。

    function read_non_domain_joined_info()
    {
    log "Debug: Enter read_non_domain_joined_info"
    # check if websocket enabled
    TrustIdentity=`cat ${id_disk_mnt_point}${ad_info_file_path} | grep '\[TrustIdentity\]' | sed 's/\s//g'`
    if [ "$TrustIdentity" == "[TrustIdentity]" ]; then
    NonDomainJoined=2
    fi
    ...
    }
    <!--NeedCopy-->
    
      1. 保存更改。
  3. 关闭模板 VM。

步骤 4:从模板 VM 创建 Linux VM

准备好未加入域的模板 VM 后,请按照以下步骤创建 VM:

  1. 登录到 Citrix Cloud。

  2. 双击 Citrix DaaS™,然后访问“完整配置”管理控制台。

  3. “计算机目录”中,选择使用 Machine Creation Services 从模板 VM 创建 Linux VM。有关更多信息,请参阅 Citrix DaaS 文章“未加入域”

步骤 5:将 AAD 用户帐户分配给 Linux VM

创建未加入域的 VM 后,将 AAD 用户帐户分配给它们。

要将 AAD 用户帐户分配给 VM,请按照以下步骤操作:

  1. 使用管理员帐户访问 VM。
  2. “标识”>“系统分配”选项卡上,启用“系统标识”

    setting to enable login with AAD

  3. “访问控制 (IAM)”>“角色分配”选项卡上,找到“虚拟机用户登录”区域,然后根据需要添加 AAD 用户帐户。

    Enable login with AAD

登录到未加入域的 VDA

组织中的最终用户可以通过两种方式登录到未加入域的 VDA。详细步骤如下:

  1. 启动 Workspace 应用程序,然后通过输入 AAD 用户名和密码登录到工作区。此时将显示 Workspace 页面。
  2. 双击未加入域的桌面。此时将显示 AAD 登录页面。

    页面因 VDA 上设置的登录模式(设备代码或 AAD 帐户/密码)而异。默认情况下,Linux VDA 使用设备代码登录模式对 AAD 用户进行身份验证,如下所示。作为管理员,您可以根据需要将登录模式更改为 AAD 帐户/密码。有关详细步骤,请参阅以下部分。

    Enable login with AAD

  3. 根据屏幕上的说明,通过以下方式之一登录到桌面会话:
    • 扫描 QR 码并输入代码。
    • 输入 AAD 用户名和密码。

更改为 AAD 帐户/密码登录模式

默认情况下,Linux VDA 使用设备代码对 AAD 用户进行身份验证。有关详细信息,请参阅这篇 Microsoft 文章。要将登录模式更改为 AAD 帐户/密码,请按照以下步骤操作:

在 VDA 上运行以下命令,找到密钥 AADAcctPwdAuthEnable,并将其值更改为 0x00000001

/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -t "REG_DWORD" -v "AADAcctPwdAuthEnable" -d "0x00000001" --force

<!--NeedCopy-->

注意:

此方法不适用于 Microsoft 帐户或已启用双重身份验证的帐户。