Citrix Cloud

将 Duo 配置为用于工作区身份验证的 SAML 提供程序

本文介绍了配置 Duo SAML 应用程序以及在 Citrix Cloud 和您的 SAML 提供程序之间建立 SAML 连接所需的步骤。其中一些步骤描述了您在 Duo SAML 提供程序的管理控制台中执行的操作。

先决条件

在完成本文中的任务之前,请确保您已满足以下先决条件:

  • 一个 Duo 云租户。
  • 您的 AD 林中有一个 Duo 身份验证代理。
  • 一个将您的 AD 用户同步到 Duo 的 Active Directory LDAPS 连接。

将 Active Directory 同步到您的 Duo 租户

请按照 Duo 文档中的说明,将本地 AD 连接到 Duo 并导入用户以用于 SAML

创建 Active Directory LDAPS 连接

  1. 选择 Applications > SSO Settings > Add Source > Active Directory > Add Active Directory

    Saml duo add authentication source

  2. 输入 LDAPS 连接到您的 AD 林的显示名称。

  3. 输入域控制器的 FQDN。

    Saml duo add dc fqdn

  4. 配置 AD 域的 Base DN。

    Saml duo base dn

  5. 选择 Integrated 作为身份验证类型。

    Saml duo auth type

  6. 选择 LDAPS 作为传输类型。

    Saml duo transport type

  7. 勾选 SSL Verify Hostname。

  8. 输入域控制器证书,然后输入用于签署域证书的私有企业证书颁发机构 CA 证书。

  9. 按照以下示例输入 PEM 格式的证书

    -----BEGIN CERTIFICATE-----
    `<base64 Domain Controller Certificate>`
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    `<base64 Certificate Authority Certificate used to sign the Domain Controller Certificate above>`
    -----END CERTIFICATE-----
    <!--NeedCopy-->
    
  10. 测试您的 LDAPS 连接。

    Saml duo run tests

配置用于 SAML 的 Duo 身份验证代理配置文件

  1. 检查您的 Duo 身份验证代理配置是否正常,并显示为“Connected to Duo”。

    Saml duo auth proxy

  2. 登录到您的 Duo 身份验证代理,并使用 Duo 管理控制台提供的 Remote Identity (rikey) 将 SAML [sso] 部分添加到其配置文件中。Duo 身份验证代理使用共享密钥与 Duo 云服务通信。此密钥在身份验证代理的初始安装或配置期间生成。

    Saml duo auth proxy config

配置用于工作区的 Duo SAML 应用程序

  1. 选择 Applications > Protect an Application。单击“Add Application”。

  2. 找到 Generic SAML Service Provider Duo 应用程序模板的条目。Citrix 建议使用 Generic SAML Service Provider Duo 模板,因为它最灵活,可让您根据需要配置 SAML 属性的不同组合和不同的 SAML 流。

    Saml duo generic saml service provider

    重要提示:

    不建议使用 Duo Citrix Workspace SAML 模板,因为它不灵活,并且仅支持使用 AD 身份的 SAML。Duo Citrix Workspace SAML 模板也不允许添加可选属性,例如 cip_domain 和 cip_forest,这些属性是某些高级并购 SAML 配置所必需的。它也不允许配置 Citrix Cloud 注销端点。

  3. 为您的 SAML 应用程序指定一个“Display Name”,例如“Citrix Cloud Prod”。

  4. 指定“user access”,例如“Enable for all users”。

  5. 在“Metadata Discovery”中选择“None (manual Input)”,然后输入以下 Citrix Cloud SAML 端点。

  6. 根据您的 CC 租户所在的 Citrix Cloud 区域输入 EntityID

    URL 区域
    https://saml.cloud.com 商业版(欧盟、美国和 APS)
    https://saml.citrixcloud.jp 日本
    https://saml.cloud.us 政府版
  7. 根据您的 CC 租户所在的 Citrix Cloud 区域配置“Single sign-on URL (ACS URL)”。

    URL 区域
    https://saml.cloud.com/saml/acs 商业版(欧盟、美国和 APS)
    https://saml.citrixcloud.jp/saml/acs 日本
    https://saml.cloud.us/saml/acs 政府版
  8. 根据您的 CC 租户所在的 Citrix Cloud 区域配置“Single Logout URL”。

    URL 区域
    https://saml.cloud.com/saml/logout/callback 商业版(欧盟、美国和 APS)
    https://saml.citrixcloud.jp/samllogout/callback 日本
    https://saml.cloud.us/saml/samllogout/callback 政府版
  9. 不需要“Service Provider Login URL”,可以将其留空。

  10. 不需要“Default Relay State”,可以将其留空。

    Saml duo service provider

  11. 将“Name ID Format”配置为“Unspecified”。

  12. 将“Name ID Attribute”配置为 userPrincipalName(区分大小写)。

  13. 将“Signature algorithm”配置为 SHA256

  14. 将“Signing options”配置为“Sign response”。

  15. 将“Assertion encryption”配置为“disabled”。

    Saml duo saml response

  16. 配置“Map Attributes”,左侧为 Duo 桥接属性,右侧为 Citrix Cloud SAML 声明名称。

    Saml duo attribute mappings

    重要提示:

    Duo 桥接属性(左侧)和 SAML 属性声明名称(右侧)区分大小写。右侧的声明名称必须与 Citrix Cloud SAML 连接中配置的名称匹配。

配置 Citrix Cloud SAML 连接

  1. 所有 Citrix 登录流都需要使用 Workspace URL 或 Citrix Cloud GO URL 由服务提供程序启动。

  2. Identity and Access Management > Authentication > Add an identity provider > SAML 中使用 SAML 连接的默认推荐值。

  3. 通过访问 Duo Active Directory Sync 文档,从您的 Duo 门户获取要输入到 Citrix Cloud SAML 连接中的 Duo SAML 应用程序 SAML 端点。

    Saml duo duo endpoints

    Citrix Cloud 中的此字段 输入此值
    Entity ID https://sso-<id>.sso.duosecurity.com/saml2/sp/<samlappID>/metadata
    Sign Authentication Request
    SSO Service URL https://sso-<id>.sso.duosecurity.com/saml2/sp/<samlappID>/sso
    SSO Binding Mechanism HTTP Post
    SAML Response Sign Either Response Or Assertion
    Authentication Context Unspecified, Exact
    Logout URL https://sso-<id>.sso.duosecurity.com/saml2/sp/<samlappID>/slo
    Sign Logout Request
    SLO Binding Mechanism HTTP Post

Duo SAML 注销行为

在撰写本文时,Duo SAML 目前不支持 SAML SLO,但可以配置 Duo 以在用户显式注销 Workspace 和/或 Citrix Cloud 时终止 IDP 会话。建议您在选择配置 Duo SAML 应用程序的注销设置之前,阅读主 SAML 文章中的 SAML 注销注意事项部分 saml logout considerations

重要提示:

摘自 Duo 文档 Duo SSO Logout Behavior and Session Management Details

决定注销并访问 Duo SSO 的 SLO URL 的用户将从 Duo SSO 注销,并删除其 MFA 记住的设备会话,然后重定向到注销页面

要在最终用户注销 Workspace 和/或 Citrix Cloud 时配置 Duo IDP 会话的显式注销,请按照以下推荐步骤操作。

  1. 在您的 Duo SAML 应用程序中配置 Citrix Cloud SAML 注销端点。

    Saml duo cc logout

  2. 在 Citrix Cloud SAML 连接中配置 Duo SLO 端点。

    重要提示:

    如果您未使用 Generic SAML Provider Duo 应用程序模板,则将无法完成此步骤,因为输入 Citrix Cloud 注销端点的选项将不可用。

    Saml duo ccconnection logout

  3. 当 Workspace 的 SAML 连接的两端都按照步骤 1 和 2 配置为注销时,Duo 将显示以下 UI,指示 IDP 会话已终止。

    Saml duo logout ui

  4. 可选:为了改善 Workspace 最终用户的注销体验,可以将 Duo LDAPS 连接配置为单个“Logout Redirect URL”,它会将最终用户重定向回 Citrix Workspace 登录页面。这在您的 AD 林 LDAPS 连接中完成。

    Saml duo logout redirect url

    重要提示:

    上面显示的注销重定向 URL 字段将只允许配置单个 Workspace URL。在 Duo 的单个 Active Directory 林连接中,无法配置 Citrix Cloud 租户中的多个不同 Workspace URL。

将 Duo 配置为用于工作区身份验证的 SAML 提供程序