ADC

SAML 身份验证

安全声明标记语言 (Security Assertion Markup Language, SAML) 是一种基于 XML 的身份验证机制,提供单点登录功能,由 OASIS 安全服务技术委员会定义。

注意

自 NetScaler 12.0 Build 51.x 起,用作使用多重 (nFactor) 身份验证的 SAML 服务提供程序 (SP) 的 Citrix ADC 设备现在会在登录页面上预填充用户名字段。设备将 NameID 属性作为 SAML 授权请求的一部分发送,从 Citrix ADC SAML 身份提供程序 (IdP) 中检索 NameID 属性值,然后预填充用户名字段。

使用 SAML 身份验证的原因

假设存在一种情况,即服务提供程序 (LargeProvider) 为客户 (BigCompany) 托管多个应用程序。BigCompany 的用户必须无缝访问这些应用程序。在传统的设置中,LargeProvider 需要维护 BigCompany 用户的数据库。这引起了下列每个利益干系人的一些关注:

  • LargeProvider 必须确保用户数据的安全。
  • BigCompany 必须验证用户的身份并使用户数据保持最新状态,不仅仅是在自己的数据库中,还要在 LargeProvider 维护的用户数据库中。例如,从 BigCompany 数据库中删除的用户也必须从 LargeProvider 数据库中删除。
  • 用户必须单独登录每个托管应用程序。

SAML 身份验证机制提供了一种备选方法。下面的部署示意图显示了 SAML 的工作原理(SP 启动的流程)。

本地化后的图片

传统身份验证机制引起的问题按如下所示进行解决:

  • LargeProvider 不必为 BigCompany 用户维护数据库。从身份管理中解放出来,LargeProvider 可以专注于提供更好的服务。
  • BigCompany 不担负确保 LargeProvider 用户数据库与自己的用户数据库保持同步的责任。
  • 用户可以登录一次,登录到 LargeProvider 上托管的一个应用程序,然后自动登录到托管在该位置的其他应用程序。

Citrix ADC 设备可以作为 SAML 服务提供程序 (SP) 和 SAML 身份提供程序 (IdP) 进行部署。请阅读相关主题以了解必须在 Citrix ADC 设备上执行的配置。

配置为 SAML 服务提供程序的 Citrix ADC 设备现在可以强制执行受众限制检查。仅当 SAML 答复方是至少一个指定受众的成员时,受众限制条件才会评估为“有效”。

可以将 Citrix ADC 设备配置为将 SAML 断言中的属性作为组属性进行解析。将其解析为组属性会使设备能够将策略绑定到组。

SAML 身份验证