将本地 PingFederate 服务器配置为工作区和 Citrix Cloud 的 SAML 提供程序
本文由 Citrix 和 Ping 工程师合作撰写,并经过双方审核,以确保撰写时的技术准确性。 请参阅 Ping 文档以获取有关如何配置、配置和授权内部 PingFederate 服务器以用作 SAML 提供商的说明,因为这超出了本文的范围。
本文档是使用 PingFederate 版本 11.3 和 12 编写的。
必备条件
本文专门讨论 SAML 配置并确保满足以下条件。
- 您已经在组织内配置了内部 PingFederate 服务器并获得了必要的许可证。 有关更多信息,请参阅 PingFederate 安装。
- 您需要在 PingFederate 服务器上安装受支持的 Java 版本。 请参阅 Ping Identity 文档以了解受支持的 Java 版本。 有关更多信息,请参阅 Java PingFederate 要求。
- 您已配置所需的网络和防火墙规则,以允许 Citrix Cloud 和 Workspace 在 Workspace/Citrix Cloud 管理控制台 SAML 登录过程中重定向到本地 PingFederate 服务器。 有关更多信息,请参阅 PingFederate 网络要求。
- 您已将公开签名的 x509 证书导入到 PingFederate 服务器上,该证书可充当 PingFederate 服务器的服务器证书。
- 您已将公开签名的 x509 证书导入到 PingFederate 服务器上,该证书可充当 IdP 的 SAML 签名证书。 在 SAML 连接过程中,必须将此证书上传到 Citrix Cloud。
- 您已将内部部署的 Active Directory 连接到 PingFederate。 有关更多信息,请参阅 PingFederate LDAP 数据存储
注意:
在配置 PingFederate 以用于 Citrix Cloud 和 Workspace 时,请参阅 PingFederate 文档以了解各个 SAML 设置的作用并帮助补充此处提供的说明。
使用 PingFederate 中的数据存储配置与 AD 域的 Active Directory 连接
-
在数据存储内配置 Active Directory 连接。
-
选择类型为 目录 (LDAP)。
-
为 LDAPS 连接配置您的域控制器,并在主机名字段中添加域控制器 FQDN 列表。 然后点击 测试连接。
-
配置完成后,Active Directory 连接应类似于以下示例:
上传 Citrix Cloud SAML 签名证书
- 单击 安全 选项卡
-
在 签名 & 解密密钥和证书中上传您希望 PingFederate 使用的 SAML 签名证书。
注意:
在此示例中,使用的证书是公开签名的 Digicert
pingfederateserver.domain.com
证书。 -
上传用于签署 PingFederate 服务器 SAML 签名证书的任何 CA 证书。
注意:
PingFederate 服务器证书和 SAML 签名证书可以是相同的 SSL 证书,也可以使用不同的 SSL 证书。 配置 SAML 连接时,您需要向 Citrix Cloud 提供 SAML 签名证书的副本。
上传 Citrix Cloud 元数据
-
为 Citrix Cloud 元数据提供一个名称,并输入与您的 Citrix Cloud 租户所在的 Citrix Cloud 区域相对应的元数据 URL。
-
配置完成后,Citrix Cloud 元数据配置应类似于以下示例。
在 PingFederate 中配置密码凭证验证器
有关更多信息,请参阅 PingFederate 密码凭证验证器
-
将密码凭证验证器类型配置为 LDAP 用户名和密码。
-
配置 实例配置。 选择您之前配置的 AD 域连接和数据存储 使用 PingFederate内的数据存储配置到您的 AD 域的 Active Directory 连接。 输入合适的 LDAP 过滤器,如示例所示。
(((sAMAccountName=${username})(userPrincipalName=${username}))
注意:
示例过滤器适用于 sAMAccountName 和 userPrincipalName AD 用户名格式,使最终用户能够使用其中任一格式登录 Workspace 或 Citrix Cloud。
-
配置 扩展合约。
-
密码凭证验证器 摘要应类似于此示例。
在 PingFederate 中配置 IDP 适配器
有关更多信息,请参阅 PingFederate HTML 表单适配器
-
创建类型为 HTML 表单 IdP 适配器的新 IDP 适配器。
-
选择您之前配置的现有 密码凭证验证器 并配置IDP适配器。 有关更多信息,请参阅 在 PingFederate中配置密码凭证验证器。
-
使用在 SAML 登录期间传递给 Citrix Cloud 或 Workspaces 的 SAML 属性配置 扩展合同 。
-
配置 适配器属性。
- 配置 适配器合同映射 ,其中 SAML 属性从 AD 身份映射到 LDAP 用户属性。 单击 配置适配器契约。
-
配置 属性源 & 用户查找。
-
配置 适配器合同履行。 选择 LDAP 和活动目录数据存储的名称作为用户属性数据的来源。 值是用户的活动目录属性,例如
objectGUID
或objectSid
。
为 Citrix Cloud 或 Workspaces 配置服务提供商连接(SAML 应用程序)
下面提供的示例 PingFederate 配置假设您的组织内有以下 SAML 身份验证要求。
- 从 Workspace/Citrix Cloud 管理控制台发送的 SAML 身份验证请求必须经过签名。
- SAML HTTP POST 绑定将用于 SSO 和 SLO 请求。
- 单点注销 (SLO) 是贵组织内的一项要求。 当最终用户退出 Workspace 或 Citrix Cloud 管理控制台时,Citrix Cloud 会向 SAML 提供商 (IdP) 发送 SAML SLO 请求以退出用户。
-
PingFederate 需要签名的 HTTP POST 请求来启动退出。 SAML 提供商需要签名的 SLO 请求。
有关更多信息,请参阅 PingFederate SP 管理
程序
-
配置 连接模板。
-
配置 连接类型 并选择 浏览器 SSO 配置文件和 SAML 2.0。
-
配置 连接选项。
-
导入 Citrix Cloud 元数据。 选择 URL 和您之前创建的
CitrixCloudProdMetadata
URL,然后单击 加载元数据 -
配置 一般信息。 将服务提供商连接实体 ID、基本 URL 和连接名称设置为 Citrix Cloud 客户区域的 Citrix Cloud SAML 端点。
- https://saml.cloud.com - 商业欧盟、美国和 APS
- https://saml.citrixcloud.jp - 日本
- https://saml.cloud.us - 政府
-
配置 协议设置。
-
使用默认的 断言生命周期 设置。
- 配置 SAML 断言创建。
-
点击 配置断言创建
-
选择 标准。
-
-
配置 属性契约。
-
配置 适配器实例。
-
配置 映射方法。
-
配置 属性合同履行。
-
将 发行标准 配置为无条件的默认值。
-
完成的 IDP 适配器映射 如下所示:
- 配置 协议设置。 Citrix Cloud 所需的 SAML 路径将附加到您的 PingFederate 服务器基本 URL。 可以通过在端点 URL 字段中输入完整路径来覆盖基本 URL,但这通常是不必要的,也是不受欢迎的。 基本 URL - https://youpingfederateserver.domain.com
-
配置断言消费者服务 URL,将 SAML 路径附加到 PingFederate 服务器基本 URL。 端点 URL -
/saml/acs
-
配置 SLO 服务 URL。 EndpointURL -
/saml/logout/callback
重要:
如果您希望在退出 Workspace 或 Citrix Cloud 时执行 SLO,则 Citrix Cloud SAML 连接需要配置 PingFederate 注销 URL 以匹配此 URL。 如果未能在 SAML 连接中配置注销 URL,将导致最终用户仅退出 Workspace,但不会退出 PingFederate。
-
配置 允许的 SAML 绑定。
-
配置 签名策略。
重要:
SAML 签名设置必须在 SAML 连接的两端进行一致配置。 必须配置 Workspace 或 Citrix Cloud (SP) 才能发送签名的 SSO 和 SLO 请求。
-
必须配置 PingFederate (IDP) 才能使用 Citrix Cloud SAML 签名验证证书执行签名请求。
-
配置 加密策略。
注意:
建议在初始设置和测试期间将加密设置为 NONE ,以便您可以调试断言中缺失或不正确的 SAML 属性的任何问题。 如果您需要加密断言,建议您在证明登录 Workspace 或 Citrix Cloud 成功且所有资源均已成功枚举并可以启动后启用加密。 如果您无法查看 SAML 断言的纯文本内容,则在启用加密的情况下调试 SAML 问题将变得不可能。
-
查看 摘要 标签。
-
检查 Citrix Cloud 服务提供商 (SP) 连接。 一旦配置了 Citrix Cloud SP 连接 ,它应该看起来像这样:
有用提示:
使用 SP 连接激活和摘要页面来检查您的 SAML 应用程序并进行调试,因为它允许快速轻松地进行配置更改。 通过单击 SP 连接激活和摘要页面,您可以导航到任何 SAML 配置子部分,只需单击该部分的标题即可。 单击以红色突出显示的任意标题即可更新这些设置。
-
-
已完成的 Citrix Cloud SP 连接 应像这样出现在列表中。
-
可以以 XML 文件的形式导出 SP 连接。 Citrix 建议您在使用 Citrix Cloud 和 Workspace 测试 SP 连接后对其进行备份。
配置 Citrix Cloud SAML 连接
所有 Citrix 登录流程都需要由服务提供商使用 Workspace URL 或 Citrix Cloud GO URL 发起。
可在 CItrix Cloud SAML 连接中使用的 PingFederate SAML 端点的示例。
- 身份提供者实体 ID:
https://yourpingfedbaseurl.domain.com
- 身份提供者 SSO 服务 URL:
https://yourpingfedbaseurl.domain.com/idp/SSO.saml2
- 身份提供商注销 URL:
https://yourpingfedbaseurl.domain.com/idp/SLO.saml2
重要:
- 不支持使用错误的 PingFederate IDP 发起的 SSO 端点
https://yourpingfederateserver.domain.com/idp/startSSO.ping?PartnerSpId=https://saml.cloud.com
。 Citrix Cloud 和 Workspace 不支持 IDP 发起的 SSO。- 以下摘录自 PingFederate 文档: 这是用于启动未经请求的 IdP 发起的单点登录 (SSO) 事务的路径,在此过程中,包含断言的 SAML 响应将发送到服务提供商 (SP)。
- 众所周知,使用不正确的 SAML 端点会导致 SAML 登录失败以及 Citrix Cloud 身份验证平台内出现以下错误。
ExceptionMessage=意外收到来自 YourSAMLApp 的 IdP 发起的 SAML 响应。