什么是SAML?

SAML是安全断言标记语言(Security Assertion Markup Language)的缩写,是一种用于在不同互联网域之间交换用户身份验证信息的标准协议。借助SAML,用户可以通过单点登录(SSO)访问不同域中的多项服务。例如,用户登录企业内部系统后,无需提供其他登录凭据,即可访问云服务。SAML基于XML框架,最初开发于2002年,2.0版于2005年发布。

不同互联网域之间的SSO需要交换身份验证信息。SAML通过以下方式实现这一点:

  • 身份提供商(IdP):提供身份验证信息的实体。
  • 服务提供商(SP):利用身份验证信息提供服务的实体。

当用户访问SP以使用服务时,SP会将用户请求连同SAML身份验证请求重定向到IdP。IdP处理身份验证请求,与用户交互并执行身份验证。用户成功通过身份验证后,IdP会向SP发出包含身份验证详细信息、用户属性和访问权限的断言。SP根据该断言实施访问控制,无需直接处理用户身份验证数据,从而为多项服务实现无缝单点登录。

F5的BIG-IP Access Policy Manager (APM)支持单点登录(SSO),并与SAML(SAML 2.0)完全兼容。它既可作为IdP执行用户身份验证并签发断言,也可作为SP接收断言,以控制对应用的访问。