Citrix Cloud™

将 SAML 作为身份提供程序连接到 Citrix Cloud™

Citrix Cloud 支持使用 SAML(安全断言标记语言)作为身份提供程序来验证 Citrix Cloud 管理员和登录其商店的最终用户。您可以将您选择的 SAML 2.0 提供程序与您的本地 Active Directory (AD) 结合使用。

关于本文

本文介绍了配置 Citrix Cloud 与您的 SAML 提供程序之间连接所需的步骤。其中一些步骤描述了您在 SAML 提供程序的管理控制台中执行的操作。您用于执行这些操作的具体命令可能与本文中描述的命令有所不同,具体取决于您选择的 SAML 提供程序。这些 SAML 提供程序命令仅作为示例提供。有关您的 SAML 提供程序的相应命令的更多信息,请参阅您的 SAML 提供程序的文档。

Citrix SAML 登录用例

  • 最终用户登录商店。
  • 最终用户使用商店自定义域登录商店。
  • 管理员用户登录 Citrix Cloud。

为您的用例选择正确的 SAML 流程

  • AD 支持的身份导入到您的 SAML 提供程序中。这些身份包含本地用户属性,例如 objectSID 和 objectGUID。这些不需要 AD 影子帐户,因为与这些导入用户对应的 AD 帐户已存在于 Active Directory 中。

  • 本机身份,它们仅存在于 SAML 提供程序目录中,例如 Entra ID 或 Okta 用户。这些在 AD 中没有对应的身份,如果使用 AD 域加入的 VDA 和 DaaS 目录,则需要 AD 影子帐户。这些用户没有嵌入的 objectSID。

  • Entra ID 访客/B2B 用户,这些用户是从其他 Entra ID 租户邀请到 Entra ID 或使用访客电子邮件地址的。这些在 AD 中没有对应的身份,如果使用 AD 域加入的 VDA 和 DaaS 目录,则需要 AD 影子帐户。这些用户可能没有嵌入的 objectSID。某些用户在错误的 Active Directory 中可能具有不正确的 objectSID。

支持的 SAML 提供程序

支持官方 SAML 2.0 规范的 SAML 提供程序支持与 Citrix Cloud 结合使用。

Citrix 已测试以下 SAML 提供程序,用于验证 Citrix Cloud 管理员以及使用单点登录 (SSO) 和单点注销 (SLO) 验证 Citrix® StoreFront Cloud 最终用户。未在此列表中出现的 SAML 提供程序也受支持。

  • 微软 ADFS
  • 微软 Entra ID
  • Duo
  • 奥克塔
  • PingFederate

在测试这些提供商时,Citrix 使用了以下设置在 Citrix Cloud 控制台中配置 SAML 连接:

在 Citrix Cloud 中的此字段 输入此值
实体 ID https://entityid.com
签署身份验证请求
SSO 服务 URL https://yoursamlprovider/sso/saml2
SSO 绑定机制 HTTP Post 方式
SAML 响应 签署响应或断言
身份验证上下文 未指定,精确
注销 URL https://yoursamlprovider/slo/saml2
签署注销请求
SLO 绑定机制 HTTP Post 方式

有关这些设置的更多信息,请参阅本文中的 将 SAML 提供程序元数据添加到 Citrix Cloud

支持范围限定的实体 ID

本文介绍了如何使用单个 SAML 应用程序和 Citrix Cloud 的默认通用实体 ID 配置 SAML 身份验证。

如果您的 SAML 身份验证要求包括在单个 SAML 提供程序中使用多个 SAML 应用程序,请参阅 在 Citrix Cloud 中配置具有范围限定实体 ID 的 SAML 应用程序

管理员使用 SAML 2.0 进行身份验证

Citrix Cloud 支持使用 SAML 2.0 对 AD 中的单个管理员和管理员组的成员进行身份验证。有关将管理员组添加到 Citrix Cloud 的更多信息,请参阅管理管理员组

使用现有 SAML 连接进行管理员身份验证

如果您在 Citrix Cloud 中已有 SAML 2.0 连接并希望使用它来验证管理员,则必须首先在 Identity and Access Management 中断开 SAML 2.0,然后重新配置连接。如果您正在使用 SAML 连接来验证 StoreFront Cloud 最终用户,则还必须在 StoreFront Cloud 中禁用 SAML 身份验证方法。重新配置 SAML 连接后,您可以将单个管理员或管理员组添加到 Citrix Cloud。

如果您尝试在未首先断开并重新连接 SAML 2.0 的情况下添加单个管理员或管理员组,则 将管理员组添加到 Citrix Cloud 中所述的 Active Directory 身份选项将不会出现。

设置新 SAML 连接的任务概述

要在 Citrix Cloud 中设置新的 SAML 2.0 连接,请执行以下任务:

  1. Identity and Access Management 中,按照将 Active Directory 连接到 Citrix Cloud 中所述,将您的本地 AD 连接到 Citrix Cloud。
  2. 按照本文中SAML 与 Active Directory 集成 中所述,将您的 SAML 提供程序与您的本地 AD 集成。
  3. 配置登录 URL,管理员可以使用该 URL 登录 Citrix Cloud。
  4. Identity and Access Management 中,配置 Citrix Cloud 中的 SAML 身份验证。此任务涉及使用 Citrix Cloud 中的 SAML 元数据配置您的 SAML 提供程序,然后使用您的 SAML 提供程序中的元数据配置 Citrix Cloud 以创建 SAML 连接。

为 Citrix Cloud 管理员使用现有 SAML 连接的任务概述

如果您在 Citrix Cloud 中已有 SAML 2.0 连接并希望将其用于管理员身份验证,请执行以下任务:

  1. 如果适用,禁用 SAML 2.0 存储身份验证:在 StoreFront Cloud > Authentication 中,选择不同的身份验证方法,然后在出现提示时选择 Confirm
  2. 断开现有 SAML 2.0 连接:在 Identity and Access Management > Authentication 中,找到 SAML 连接。从最右侧的省略号菜单中,选择 Disconnect。选择 Yes, disconnect 以确认操作。
  3. 重新连接 SAML 2.0 并配置连接:从 SAML 2.0 的省略号菜单中,选择 连接
  4. 出现提示时,为管理员将用于登录的 登录 URL 输入一个唯一标识符。
  5. 按照本文中 配置 SAML 身份提供商元数据 所述配置 SAML 连接。

配置 SAML 连接后,您可以按照 管理管理员组 所述将 AD 管理员组添加到 Citrix Cloud。您还可以按照本文所述 为最终用户重新启用 SAML

创建和映射自定义 SAML 属性

如果您的 SAML 身份提供商中已配置 SID、UPN、OID、电子邮件和 displayName 属性的自定义属性,则无需执行此任务。请继续执行 创建 SAML 连接器应用程序,并在步骤 5 中使用您现有的自定义 SAML 属性。

注意:

本节中的步骤描述了您在 SAML 身份提供商的管理控制台中执行的操作。根据您选择的 SAML 身份提供商,用于执行这些操作的具体命令可能与本节中描述的命令有所不同。本节中的 SAML 身份提供商命令仅作为示例提供。有关您的 SAML 身份提供商的相应命令的更多信息,请参阅您的 SAML 身份提供商的文档。

  1. 登录到您的 SAML 身份提供商的管理控制台,然后选择用于创建自定义用户属性的选项。例如,根据您的 SAML 身份提供商的控制台,您可能会选择 用户 > 自定义用户字段 > 新建用户字段
  2. 为以下 AD 属性添加属性。使用所示的默认值命名属性。

    AD 属性 必需或可选 默认值
    userPrincipalName 如果未添加 SID 属性(推荐),则为必需。 cip_upn
    objectSID 如果未添加 UPN 属性,则为必需项。 cip_sid
    objectGUID 身份验证可选 cip_oid
    邮件 身份验证可选 cip_email
    displayName 应用商店 UI 必需 displayName
    givenName 应用商店 UI 必需 firstName
    sn 商店 UI 所需 lastName
    AD 林 身份验证可选 cip_forest
    AD 域 身份验证可选 cip_domain
  3. 选择您已连接到 Citrix Cloud 的 AD。例如,根据您的 SAML 提供商控制台,您可能选择 Users > Directories
  4. 选择添加目录属性的选项。例如,根据您的 SAML 提供商控制台,您可能选择 Directory Attributes
  5. 选择添加属性的选项,并将以下 AD 属性映射到您在步骤 2 中创建的自定义用户属性:
    • 如果您在步骤 2 中添加了 SID 属性(例如,cip_sid),请选择 objectSid 并映射到您创建的属性。
    • 如果您在步骤 2 中添加了 UPN 属性(例如,cip_upn),请选择 userPrincipalName 并映射到您创建的属性。
    • 如果您在步骤 2 中添加了 ObjectGUID 属性(例如,cip_oid),请选择 ObjectGUID 并映射到您创建的属性。
    • 如果您在步骤 2 中添加了 Mail 属性(例如,cip_email),请选择 mail 并映射到您创建的属性。
    • 如果您在步骤 2 中添加了 Display Name 属性(例如,displayName),请选择 displayName 并映射到您创建的属性。

配置管理员登录 URL

  1. https://citrix.cloud.com 登录到 Citrix Cloud。
  2. 从 Citrix Cloud 菜单中,选择 身份和访问管理
  3. 找到 SAML 2.0,然后从省略号菜单中选择 Connect
  4. 出现提示时,为您的公司输入一个简短的、URL 友好的标识符,然后选择 Save and continue。此时将显示 Configure SAML 页面。
  5. 继续下一部分以配置与 Citrix Cloud 的 SAML 连接。

配置 SAML 提供程序元数据

在此任务中,您将使用 Citrix Cloud 中的 SAML 元数据创建连接器应用程序。配置 SAML 应用程序后,您将使用连接器应用程序中的 SAML 元数据来配置与 Citrix Cloud 的 SAML 连接。

注意:

本节中的某些步骤描述了您在 SAML 提供程序的管理控制台中执行的操作。根据您选择的 SAML 提供程序,用于执行这些操作的具体命令可能与本节中描述的命令有所不同。本节中的 SAML 提供程序命令仅作为示例提供。有关您的 SAML 提供程序的相应命令的更多信息,请参阅您的 SAML 提供程序的文档。

创建 SAML 连接器应用程序

  1. 在 SAML 提供程序的管理控制台中,为具有属性和签名响应的身份提供程序添加应用程序。例如,根据您的提供程序的控制台,您可能会选择 Applications > Applications > Add App,然后选择 SAML Test Connector (IdP w/ attr w/ sign response)
  2. 如果适用,输入显示名称并保存应用程序。
  3. 在 Citrix Cloud 的“配置 SAML”屏幕中,在“SAML 元数据”下,选择“下载”。元数据 XML 文件将显示在另一个浏览器选项卡中。

    注意:

    如果需要,您也可以从 https://saml.cloud.com/saml/metadata.xml 下载此文件。在导入和监控 SAML 身份提供程序元数据时,此端点可能对某些身份提供程序更友好。

  4. 为连接器应用程序输入以下详细信息:
    • 在“受众”字段中,输入 https://saml.cloud.com
    • 在“接收方”字段中,输入 https://saml.cloud.com/saml/acs
    • 在 ACS URL 验证器字段中,输入 https://saml.cloud.com/saml/acs
    • 在 ACS URL 字段中,输入 https://saml.cloud.com/saml/acs
  5. 将您的自定义 SAML 属性添加为应用程序中的参数值:

    创建此字段 分配此自定义属性
    cip_sid 您为 SID 创建的自定义属性。示例:cip_sid
    cip_upn 您为 UPN 创建的自定义属性。示例:cip_upn
    cip_oid 您为 ObjectGUID 创建的自定义属性。示例:cip_oid
    cip_email 您为 Mail 创建的自定义属性。示例:cip_email
    displayName 您为 Display Name 创建的自定义属性。示例:displayName
  6. 将您的最终用户添加为用户,以允许他们访问应用程序。

将 SAML 身份提供程序元数据添加到 Citrix Cloud

  1. 从您的 SAML 身份提供程序获取 SAML 元数据。下图是此文件可能的外观示例:

    SAML 元数据文件

  2. 在 Citrix Cloud 的“配置 SAML”屏幕中,输入 SAML 身份提供程序元数据文件中的以下值:
    • 在“身份提供程序实体 ID”中,输入元数据中 EntityDescriptor 元素中的 entityID 值。

      SAML 元数据文件中的实体 ID

    • 在“签署身份验证请求”中,选择“”以允许 Citrix Cloud 签署身份验证请求,证明它们来自 Citrix Cloud 而非恶意行为者。如果您希望将 Citrix ACS URL 添加到 SAML 身份提供程序用于安全发布 SAML 响应的允许列表中,请选择“”。
    • SSO 服务 URL 中,输入您要使用的绑定机制的 URL。您可以使用 HTTP-POST 或 HTTP-Redirect 绑定。在元数据文件中,找到绑定值为 HTTP-POSTHTTP-RedirectSingleSignOnService 元素。

      SAML 元数据文件中的 SSO 服务 URL

    • 绑定机制 中,选择与您从元数据文件中选择的 SSO 服务 URL 绑定匹配的机制。默认情况下,选择 HTTP Post
    • SAML 响应 中,选择您的 SAML 提供程序用于 SAML 响应和 SAML 断言的签名方法。默认情况下,选择 签署响应或断言。Citrix Cloud 将拒绝任何未按此字段中指定签名方式签名的响应。
  3. 在您的 SAML 提供程序的管理控制台中,执行以下操作:
    • 为 SAML 签名算法选择 SHA-256
    • 将 X.509 证书下载为 Base64 编码的 PEM、CRT 或 CER 文件。
  4. 在 Citrix Cloud 的 配置 SAML 页面上,在 X.509 证书 中,选择 上传文件 并选择您在上一步中下载的证书文件。
  5. 选择 继续 以完成上传。
  6. 身份验证上下文 中,选择您要使用的上下文以及您希望 Citrix Cloud 强制执行此上下文的严格程度。选择 最小 以在所选上下文中请求身份验证,而不强制执行该上下文的身份验证。选择 精确 以在所选上下文中请求身份验证,并且仅在该上下文中强制执行身份验证。如果您的 SAML 提供程序不支持身份验证上下文,或者您选择不使用它们,请选择 未指定最小。默认情况下,选择 未指定精确
  7. 对于 注销 URL(可选),决定您是否希望用户在注销其商店或 Citrix Cloud 后,也从他们之前通过 SAML 提供程序登录的所有 Web 应用程序中注销。
    • 如果您希望用户在注销其商店或 Citrix Cloud 后仍保持登录其 Web 应用程序,请将 注销 URL 字段留空。
    • 如果您希望用户在注销其商店或 Citrix Cloud 后从所有 Web 应用程序中注销,请输入您的 SAML 提供程序的 SingleLogout (SLO) 端点。如果您使用 Microsoft ADFS 或 Microsoft Entra ID 作为 SAML 提供程序,则 SLO 端点与单点登录 (SSO) 端点相同。

      EntraID 单点登录和单点注销端点 URL 示例

  8. 验证 Citrix Cloud 中的以下默认属性值是否与您的 SAML 提供程序中配置的相应属性值匹配。为了让 Citrix Cloud 在 SAML 断言中找到这些属性,此处输入的值必须与您的 SAML 提供程序中的值匹配。如果您未在 SAML 提供程序中配置某个属性,则可以使用 Citrix Cloud 中的默认值或将该字段留空,除非另有说明。

    • 用户显示名称的属性名称:默认值为 displayName
    • 用户名字的属性名称:默认值为 firstName
    • 用户姓氏的属性名称:默认值为 lastName
    • 安全标识符 (SID) 的属性名称:如果您没有为 UPN 创建属性,则必须从 SAML 提供程序输入此属性名称。默认值为 cip_sid
    • 用户主体名称 (UPN) 的属性名称:如果您没有为 SID 创建属性,则必须从 SAML 提供程序输入此属性名称。默认值为 cip_upn
    • 电子邮件的属性名称:默认值为 cip_email
    • AD 对象标识符 (OID) 的属性名称:默认值为 cip_oid
    • AD 林的属性名称:默认值为 cip_forest
    • AD 域的属性名称:默认值为 cip_domain
  9. 选择 测试并完成 以验证您是否已成功配置连接。

从 AD 将管理员添加到 Citrix Cloud

有关在 Citrix Cloud 中添加和管理 AD 组的说明,请参阅 管理管理员组

为应用商店启用 SAML 身份验证

  1. 从 Citrix Cloud 菜单中,选择 StoreFront Cloud
  2. 选择 身份验证选项卡
  3. 选择 SAML 2.0

克隆身份和访问管理中的现有 SAML 连接

重要:

克隆 SAML 连接不会克隆现有的范围实体 ID。如果您在克隆过程中添加范围实体 ID 或生成新的实体 ID,您可能需要更新您的 SAML 应用程序配置。

要克隆现有 SAML 连接,请按照以下步骤操作:

  1. 选择现有 SAML 连接右侧的三个点,然后从操作列表中选择 克隆

    克隆操作

  2. 为新的 SAML 连接输入一个新的唯一 GO URL。如果需要,以后可以更改此项。

  3. 为新的 SAML 连接输入一个新的唯一昵称。

    输入昵称

  4. 更新连接中的任何设置,例如启用范围实体 ID、需要启用签名、添加缺失的注销 URL,或更新最近已过期的 SAML 提供程序证书…….

  5. 单击“测试并完成”以保存新的 SAML 连接。

  6. 切换商店以在 StoreFront Cloud -> Authentication 中使用新的 SAML 连接。

  7. 使用新的范围实体 ID 更新您的 SAML 应用程序配置(并非总是必需)

    设置范围实体ID