将 Okta 配置为工作区身份验证的 SAML 提供程序
本文介绍了配置 Okta SAML 应用程序以及 Citrix Cloud 与您的 SAML 提供程序之间连接所需的步骤。其中一些步骤描述了您在 SAML 提供程序的管理控制台中执行的操作。
先决条件
在完成本文中的任务之前,请确保您已满足以下先决条件:
- Citrix 支持已在 Citrix Cloud 中启用 SendNameIDPolicyInSAMLRequest 功能。此功能按需启用。有关这些功能的更多信息,请参阅使用 Okta 的 SAML 所需的云功能。
- 您有一个使用以下 Okta 域之一的 Okta 组织:
- okta.com
- okta-eu.com
- oktapreview.com
- 您已将您的 Active Directory (AD) 与您的 Okta 组织同步。
- 您的 Okta 组织中已启用签名身份验证请求。
- Citrix Cloud 和 Okta SAML 应用程序中均已配置身份提供程序单点注销 (SLO)。配置 SLO 后,当最终用户从 Citrix Workspace 注销时,他们也会从 Okta 以及所有共享 Okta SAML 应用程序的其他服务提供程序注销。
- Citrix Cloud 中已启用身份提供程序签名注销 (SLO) 请求。
- Citrix Cloud 中身份提供程序注销绑定 (SLO) 为 HTTPPost。

使用 Okta 的 SAML 所需的云功能
在完成本文中的任务之前,您必须联系 Citrix 支持以启用 SendNameIDPolicyInSAMLRequest 功能。此功能使 Citrix Cloud 能够在发送给您的 SAML 提供程序的 SAML 请求中将 NameID 策略作为未指定提供。此功能仅适用于 Okta。
您可以通过登录您的 Citrix 帐户并通过 Citrix 支持网站 提交工单来请求这些功能。
要求
本文包含一项任务,您可以在其中在 Okta 管理控制台中创建 SAML 应用程序。此应用程序需要适用于您的 Citrix Cloud 区域的 SAML 签名证书。
您可以使用提取工具(例如位于 https://www.rcfed.com/SAMLWSFed/MetadataCertificateExtract 的工具)从您的区域的 Citrix Cloud SAML 元数据中提取此证书。Citrix 建议您提前获取 Citrix Cloud SAML 证书,以便在需要时提供。
本节中的步骤介绍了如何使用位于 https://www.rcfed.com/SAMLWSFed/MetadataCertificateExtract 的提取工具获取签名证书。
要获取您区域的 Citrix Cloud 元数据:
-
在您选择的提取工具中,输入您的 Citrix Cloud 区域的元数据 URL:
- 对于欧盟、美国和亚太南部地区,输入
https://saml.cloud.com/saml/metadata。 - 对于日本地区,输入
https://saml.citrixcloud.jp/saml/metadata。 - 对于 Citrix Cloud 政府区域,输入
https://saml.cloud.us/saml/metadata。
- 对于欧盟、美国和亚太南部地区,输入
- 单击加载。提取的证书将显示在您输入的 URL 下方。
- 单击下载以下载 PEM 格式的证书。
将帐户与 Okta AD 代理同步
要使用 Okta 作为 SAML 提供程序,您必须首先将本地 AD 与 Okta 集成。为此,您需要在您的域中安装 Okta AD 代理,并将您的 AD 添加到您的 Okta 组织。有关部署 Okta AD 代理的指导,请参阅 Okta 网站上的开始使用 Active Directory 集成。
之后,您将 AD 用户和组导入到 Okta。导入时,请包含与您的 AD 帐户关联的以下值:
- 电子邮件
- SID
- UPN
- OID
要将您的 AD 用户和组与您的 Okta 组织同步:
- 安装并配置 Okta AD 代理。有关完整说明,请参阅 Okta 网站上的以下文章:
- 通过手动导入或自动导入将您的 AD 用户和组添加到 Okta。有关 Okta 导入方法和说明的更多信息,请参阅 Okta 网站上的管理 Active Directory 用户和组。
配置 Okta SAML 应用程序以进行工作区身份验证
- 使用具有添加和配置 SAML 应用程序权限的管理员帐户登录您的 Okta 组织。
-
在管理控制台中,选择应用程序 > 应用程序 > 创建应用程序集成,然后选择 SAML 2.0。选择下一步。

-
在应用程序名称中,输入应用程序的友好名称。选择下一步。

- 在 SAML 设置部分中,配置 Citrix Cloud 服务提供程序 (SP) 连接:
- 在单点登录 URL 中,输入与您的 Citrix Cloud 客户的 Citrix Cloud 区域对应的 URL:
- 如果您的客户 ID 位于欧盟、美国或亚太南部地区,请输入
https://saml.cloud.com/saml/acs。 - 如果您的客户 ID 位于日本地区,请输入
https://saml.citrixcloud.jp/saml/acs。 - 如果您的客户 ID 位于 Citrix Cloud 政府区域,请输入
https://saml.cloud.us/saml/acs。
- 如果您的客户 ID 位于欧盟、美国或亚太南部地区,请输入
- 选择将此用于收件人 URL 和目标 URL。
- 在受众 URI (SP 实体 ID) 中,输入与您的 Citrix Cloud 客户的 Citrix Cloud 区域对应的 URL:
- 如果您的客户 ID 位于欧盟、美国或亚太南部地区,请输入
https://saml.cloud.com。 - 如果您的客户 ID 位于日本地区,请输入
https://saml.citrixcloud.jp。 - 如果您的客户 ID 位于 Citrix Cloud 政府区域,请输入
https://saml.cloud.us。
- 如果您的客户 ID 位于欧盟、美国或亚太南部地区,请输入
- 在 Name ID 格式中,选择未指定。Citrix Cloud 在 SAML 请求中发送的 NameID 策略必须与 Okta SAML 应用程序中指定的 NameID 格式匹配。如果这些项不匹配,启用签名身份验证请求将导致 Okta 报错。
-
在应用程序用户名中,选择 Okta 用户名。
作为此配置的示例,下图说明了美国、欧盟和亚太南部地区的正确配置:

重要提示:
Name ID 设置必须配置为未指定。为此设置使用不同的值会导致 SAML 登录失败。
- 单击显示高级设置并配置以下设置:
- 在响应中,选择已签名。
- 在断言签名中,选择已签名。
- 在签名算法中,选择 RSA-SHA256。
- 在断言加密中,选择未加密。
- 在签名证书中,以上传 PEM 格式的 Citrix Cloud 区域的 SAML 签名证书。有关获取 SAML 签名证书的说明,请参阅本文中的要求。
- 在启用单点注销中,选择允许应用程序启动单点注销。
- 在单点注销 URL 中,输入与您的 Citrix Cloud 区域对应的 URL:
- 对于欧盟、美国和亚太南部地区,输入
https://saml.cloud.com/saml/logout/callback。 - 对于日本地区,输入
https://saml.citrixcloud.jp/saml/saml/logout/callback。 - 对于 Citrix Cloud 政府版,输入
https://saml.cloud.us/saml/logout/callback。
- 对于欧盟、美国和亚太南部地区,输入
- 在 SP 颁发者中,输入您之前在受众 URI (SP 实体 ID) 中输入的值(本任务的步骤 4c)。
-
在签名请求中,选择使用签名证书验证 SAML 请求。
下图说明了美国、欧盟和亚太南部地区的正确配置:

-
对于所有剩余的高级设置,接受默认值。

- 在单点登录 URL 中,输入与您的 Citrix Cloud 客户的 Citrix Cloud 区域对应的 URL:
-
在属性语句(可选)下,输入名称、名称格式和值,如以下表格所示:
名称 名称格式 值 cip_email 未指定 user.email cip_upn 未指定 user.cip_upn cip_oid 未指定 user.cip_oid cip_sid 未指定 user.cip_sid displayName 未指定 user.displayName firstName 未指定 user.firstName lastName 未指定 user.lastName 
-
选择下一步。Okta 配置声明出现。

- 在您是客户还是合作伙伴?中,选择我是添加内部应用程序的 Okta 客户。
- 在应用程序类型中,选择这是我们创建的内部应用程序。
- 选择完成以保存您的配置。您的 SAML 应用程序的配置文件页面出现,并显示登录选项卡的内容。
配置完成后,选择分配选项卡并将用户和组分配给 SAML 应用程序。
配置 Citrix Cloud SAML 连接
所有 Citrix 登录流程都需要由服务提供程序使用工作区 URL 或 Citrix Cloud GO URL 启动。
在身份和访问管理 → 身份验证 → 添加身份提供程序 → SAML 中使用 SAML 连接的默认推荐值。
从您的 Okta 门户获取 Okta SAML 应用程序 SAML 端点,以输入到 Citrix Cloud 中。


重要提示:
Okta 不需要范围实体 ID。本文档假定范围实体 ID 已禁用。有关范围实体 ID 的解释以及何时需要它,请参阅 Citrix 关于范围实体 ID 的文档。使用默认的 Citrix Cloud SAML 连接设置,并保持范围实体 ID 禁用。

| 在 Citrix Cloud 中的此字段 | 输入此值 |
|---|---|
| 实体 ID | http://www.okta.com/<oktaSAMLappID> |
| 签名身份验证请求 | 是 |
| SSO 服务 URL | https://<youroktatenant>.okta.com/app/<oktatenantname>_<samlappname>/<samlappID>/sso/saml |
| SSO 绑定机制 | HTTP Post |
| SAML 响应 | 签名响应或断言 |
| 身份验证上下文 | 未指定,精确 |
| 注销 URL | https://<youroktatenant>.okta.com/app/<oktatenantname>_<samlappname>/<samlappID>/slo/saml |
| 签名注销请求 | 是 |
| SLO 绑定机制 | HTTP Post |