你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 上 Citrix 的安全治理和符合性

安全治理和合规性对于 Azure 上的 Citrix DaaS 部署至关重要。 若要实现卓越运营和成功,请使用适当的策略设计 Citrix DaaS 环境。

设计注意事项和建议

Azure Policy 是用于 Azure 部署上的 Citrix 的重要工具。 策略可帮助你遵守云平台团队设置的安全标准。 策略提供自动强制实施和报告,以支持持续合规性。

根据 设计区域使用平台团队查看策略基线:Azure 治理 指南。 在顶级根管理组中应用策略定义,以便可以在继承的作用域分配策略定义。

以下部分重点介绍标识、网络和防病毒建议。

  • 标识部分讨论 Citrix DaaS 服务标识及其要求。
  • 网络部分将深入探讨网络安全组 (NSG) 要求。
  • 防病毒部分提供了在 DaaS 环境中配置防病毒保护的最佳做法的链接。

服务主体角色和标识

以下部分讨论 Citrix DaaS 服务主体的创建、角色和要求。

应用注册

应用注册是在 Citrix Cloud 帐户与 Azure 之间创建单向信任关系的过程,以便 Citrix Cloud 信任 Azure。 应用注册过程创建一个 Azure 服务主体帐户,Citrix Cloud 可通过托管连接用于所有 Azure 操作。 Citrix Cloud 控制台中设置的托管连接通过云连接程序将 Citrix Cloud 链接到 Azure 中的资源位置。

必须向服务主体授予对包含 Citrix 资源的资源组的访问权限。 根据组织的安全状况,可以在参与者级别提供订阅访问权限,也可以为服务主体创建自定义角色。

在 Microsoft Entra ID 中创建服务主体时,请设置以下值:

  • 添加重定向 URI 并将其设置为 Web,值为 https://citrix.cloud.com.
  • 对于 API 权限,请从组织使用的 API 中添加 Azure 服务管理 API,然后选择user_impersonation委派权限。
  • 对于 证书和机密,请创建一个新的 客户端密码 ,建议的到期期限为一年。 必须将此机密作为安全密钥轮换计划的一部分进行更新。

需要应用注册中的 应用程序(客户端)ID 和客户端密码 才能在 Citrix Cloud 中配置托管连接设置。

企业应用程序

根据 Citrix Cloud 和 Microsoft Entra 配置,可以将一个或多个 Citrix Cloud Enterprise 应用程序 添加到 Microsoft Entra 租户。 这些应用程序允许 Citrix Cloud 访问存储在 Microsoft Entra 租户中的数据。 下表列出了 Microsoft Entra ID 中 Citrix Cloud Enterprise Applications 的应用程序 ID 和函数。

企业应用程序 ID 目的
f9c0e999-22e7-409f-bb5e-956986abdf02 Microsoft Entra ID 与 Citrix Cloud 之间的默认连接
1b32f261-b20c-4399-8368-c8f0092b4470 管理员istrator 邀请和登录
e95c4605-aeab-48d9-9c36-1a262ef8048e 工作区订阅者登录
5c913119-2257-4316-9994-5e8f3832265b Microsoft Entra ID 与 Citrix Cloud 与 Citrix Endpoint Management 之间的默认连接
e067934c-b52d-4e92-b1ca-70700bd1124e Microsoft Entra ID 与 Citrix Cloud 与 Citrix Endpoint Management 之间的旧连接

每个企业应用程序都向 Citrix Cloud 授予对 Microsoft Graph API 或 Microsoft Entra API 的特定权限。 例如,工作区订阅者登录应用程序向这两个 API 授予 User.Read 权限,以便用户可以登录和读取其配置文件。 有关授予的权限的详细信息,请参阅 适用于 Citrix Cloud 的 Microsoft Entra 权限。

内置角色

参与者内置角色包含最广泛的权限集,非常适合在订阅级别分配给服务主体帐户。 在订阅级别授予参与者权限需要 Microsoft Entra Global 管理员istrator 帐户。 授予后,Azure 会提示在从 Citrix Cloud 到 Microsoft Entra ID 的初始连接期间提供所需的权限。

在创建主机连接期间用于身份验证的任何帐户也必须至少是订阅上的共同管理员。 此级别的权限允许 Citrix Cloud 在不限制的情况下创建必要的对象。 通常,当整个订阅专用于 Citrix 资源时,请使用此方法。

某些环境不允许服务主体在订阅级别具有 参与者 权限。 Citrix 提供了一种称为窄范围服务主体替代解决方案。 对于窄范围服务主体,Microsoft Entra Global 管理员istrator 手动完成应用程序注册,然后订阅管理员手动向服务主体帐户授予相应的权限。

范围窄的服务主体对整个订阅没有参与者权限,只对 创建和管理计算机目录所需的资源组、网络和映像具有参与者 权限。 范围窄的服务主体需要以下 参与者 权限:

  • 预先创建的资源组:虚拟机参与者、存储帐户参与者磁盘快照参与者
  • 虚拟网络: 虚拟机参与者
  • 存储帐户: 虚拟机参与者

自定义角色

窄范围服务主体在作用域内有限时仍被授予广泛的 参与者 权限,在安全敏感环境中可能仍不可接受。 若要提供更精细的方法,可以使用两个自定义角色向服务主体提供必要的权限。 Citrix_Hosting_连接ion 角色授予创建托管连接的权限,Citrix_Machine_Catalog角色授予创建 Citrix 工作负荷的权限。

Citrix_Hosting_连接 角色

Citrix_Hosting_连接角色以下 JSON 说明具有创建托管连接所需的最低权限。 如果只对计算机目录主映像使用快照或仅使用磁盘,则可以从actions列表中删除未使用的权限。

{
    "id": "",
    "properties": {
        "roleName": "Citrix_Hosting_Connection",
        "description": "Minimum permissions to create a hosting connection. Assign to resource groups that contain Citrix infrastructure such as Cloud Connectors, master images, or virtual network resources.",
        "assignableScopes": [
            "/"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Resources/subscriptions/resourceGroups/read",
                    "Microsoft.Compute/snapshots/read"
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Network/virtualNetworks/read",
                    "Microsoft.Network/virtualNetworks/subnets/join/action"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

应将Citrix_Hosting_连接自定义角色分配给具有云连接或主映像或虚拟网络资源的Citrix_Infrastructure资源组。 可以直接将此 JSON 角色说明复制并粘贴到自定义 Microsoft Entra 角色定义中。

Citrix_Machine_Catalog角色

Citrix_Machine_Catalog角色的以下 JSON 说明具有 Citrix 计算机目录向导在 Azure 中创建所需资源所需的最低权限。

{
    "id": "",
    "properties": {
    "roleName": "Citrix_Machine_Catalog",
    "description": "Minimum permissions to create a machine catalog. Assign to resource groups that contain Citrix workload servers that are running the Virtual Delivery Agent.",
    "assignableScopes": [
    "/"
    ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Resources/subscriptions/resourceGroups/read",
                    "Microsoft.Storage/storageAccounts/listkeys/action",
                    "Microsoft.Storage/storageAccounts/read",
                    "Microsoft.Storage/storageAccounts/write",
                    "Microsoft.Network/networkSecurityGroups/write",
                    "Microsoft.Compute/virtualMachines/write",
                    "Microsoft.Compute/virtualMachines/start/action",
                    "Microsoft.Compute/virtualMachines/restart/action",
                    "Microsoft.Compute/virtualMachines/read",
                    "Microsoft.Compute/virtualMachines/powerOff/action",
                    "Microsoft.Compute/virtualMachines/performMaintenance/action",
                    "Microsoft.Compute/virtualMachines/deallocate/action",
                    "Microsoft.Compute/virtualMachines/delete",
                    "Microsoft.Compute/virtualMachines/convertToManagedDisks/action",
                    "Microsoft.Compute/virtualMachines/capture/action",
                    "Microsoft.Compute/snapshots/endGetAccess/action",
                    "Microsoft.Compute/snapshots/beginGetAccess/action",
                    "Microsoft.Compute/snapshots/delete",
                    "Microsoft.Compute/snapshots/write",
                    "Microsoft.Compute/snapshots/read",
                    "Microsoft.Compute/disks/endGetAccess/action",
                    "Microsoft.Compute/disks/delete",
                    "Microsoft.Compute/disks/beginGetAccess/action",
                    "Microsoft.Compute/disks/write",
                    "Microsoft.Network/networkSecurityGroups/read",
                    "Microsoft.Network/networkInterfaces/delete",
                    "Microsoft.Network/networkInterfaces/join/action",
                    "Microsoft.Network/networkInterfaces/write",
                    "Microsoft.Network/networkInterfaces/read",
                    "Microsoft.Storage/storageAccounts/listServiceSas/action",
                    "Microsoft.Storage/storageAccounts/listAccountSas/action",
                    "Microsoft.Storage/storageAccounts/delete",
                    "Microsoft.Compute/disks/read",
                    "Microsoft.Resources/subscriptions/resourceGroups/delete",
                    "Microsoft.Resources/subscriptions/resourceGroups/write",
                    "Microsoft.Network/virtualNetworks/subnets/join/action",
                    "Microsoft.Network/virtualNetworks/subnets/read",
                    "Microsoft.Network/virtualNetworks/read",
                    "Microsoft.Network/networkSecurityGroups/join/action"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

Citrix_Machine_Catalog 自定义角色分配给 保存 Citrix 虚拟传送代理(VDA)虚拟机(VM)的Citrix_MachineCatalog 资源组。 可以直接将此 JSON 角色说明复制并粘贴到自定义 Microsoft Entra 角色定义中。

网络

NSG 是有状态的,因此它们允许返回可应用于 VM、子网或两者兼有的流量。 当子网和 VM NSG 都存在时,子网 NSG 首先适用于入站流量,VM NSG 首先适用于出站流量。 默认情况下,在虚拟网络中允许主机之间的所有流量以及来自负载均衡器的所有入站流量。 默认情况下,仅允许出站 Internet 流量,所有其他出站流量均被拒绝。

通过使用 NSG 仅允许 Citrix Cloud 环境中的预期流量,可以限制潜在的攻击途径,并显著提高部署安全性。 下表列出了 Citrix 部署必须允许的所需网络端口和协议。 此列表仅包括 Citrix 基础结构使用的端口,不包括应用程序使用的端口。 请务必定义 NSG 中保护 VM 的所有端口。

目标 协议 端口 目的
云连接程序 *.digicert.com HTTP 80 证书吊销检查
云连接程序 *.digicert.com HTTPS 443 证书吊销检查
云连接程序 dl.cacerts.digicert.com/DigiCertAssuredIDRootCA.crt HTTPS 443 证书吊销检查
云连接程序 dl.cacerts.digicert.com/DigiCertSHA2AssuredIDCodeSigningCA.crt HTTPS 443 证书吊销检查
云连接程序 云连接程序 TCP 80 控制器之间的通信
云连接程序 云连接程序 TCP 89 本地主机缓存
云连接程序 云连接程序 TCP 9095 业务流程服务
云连接程序 VDA TCP UDP 1494 ICA/HDX 协议
EDT 需要 UDP
云连接程序 VDA TCP UDP 2598 会话可靠性
EDT 需要 UDP
云连接or VDA TCP 80 (双向) 应用程序和性能发现
VDA 网关服务 TCP 443 Rendezvous 协议
VDA 网关服务 UDP 443 通过 443 到网关服务的 EDT UDP
VDA *.nssvc.net
*.c.nssv.net
*.g.nssv.net
TCP UDP 443 网关服务域和子域
Citrix 预配服务 云连接程序 HTTPS 443 Citrix Cloud Studio 集成
Citrix 许可证服务器 Citrix 云 HTTPS 443 Citrix 云许可集成
CVAD 远程 PowerShell SDK Citrix 云 HTTPS 443 通过 SDK 运行远程 PowerShell 脚本的任何系统
WEM 代理 WEM 服务 HTTPS 443 代理到服务通信
WEM 代理 云连接程序 TCP 443 注册流量

如果使用 Citrix 应用程序交付管理(ADM),请参阅 网络和端口要求的系统 要求。

防病毒

防病毒软件是最终用户环境保护的关键元素。 在 Citrix DaaS 环境中适当配置防病毒是顺利操作的关键。 不正确的防病毒配置可能会导致性能问题、用户体验下降或各种组件的超时和故障。 有关如何在 Citrix DaaS 环境中配置防病毒的详细信息,请参阅 技术论文:终结点安全性、防病毒和反恶意软件最佳做法

下一步

查看特定于 Azure 上 Citrix 部署的业务连续性和灾难恢复(BCDR)的关键设计注意事项和建议。