管理认证SAML入门

注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

入门

SAML 2.0 (安全声明标记语言) ↗ 是一种基于XML的数据格式,用于在服务提供商(通常缩写为SP),如Foundry,与身份提供商IdP),如Azure AD或Okta之间交换身份验证和授权数据。SAML 2.0的最常见应用案例是通过网页浏览器实现单点登录 (SSO)。

概念

在以下部分中,将讨论Foundry中常见的身份验证概念。

SAML 集成元数据

SAML集成元数据,也称为服务提供商元数据,是需要传递给身份提供商的关于Foundry的信息。此信息包括:

  • 实体ID: 用于标识Foundry的唯一ID,采用URN ↗格式 urn:uuid:[$UUID]
  • 断言消费者服务 (ACS) URL: Foundry的端点,用于接受SAML响应消息以基于断言建立会话。
  • 单点注销URL: Foundry的端点,用于接受来自身份提供商的SAML单点注销请求。
  • 证书: 用于签署发送给身份提供商的SAML消息。

此信息被编码为自动生成的XML文件,可以整体复制并由客户上传到身份提供商。此外,控制面板会将信息提取到可单独复制的独立字段中。

身份提供商元数据

身份提供商元数据是需要传递给Foundry的关于身份提供商的信息。此信息包括身份提供商的实体ID、单点登录(SSO)和单点注销URL,以及一个证书。

身份提供商元数据被编码为XML文件,应从身份提供商复制并上传到控制面板。

邮件域

邮件域用于决定向用户呈现哪些身份提供商集成作为登录选项。当用户在登录屏幕中输入他们的电子邮件或用户名时,将测试所有已配置的身份提供商集成的邮件域,仅显示匹配的身份提供商集成。

邮件域可以是正则表达式,尽管通常是简单的形式 @example.com,这将自动转换为 .*@example\.com。如果身份提供商集成应向所有用户显示,请使用 .*

"允许的邮件域"窗口,使您能够定义与身份验证提供商关联的邮件域。已选择“限制邮件域”选项,并允许了几种简单形式和正则表达式形式的示例域。

请注意,默认情况下,邮件域的简单形式(@example.com)和正则表达式 (.*@example\.com) 都区分大小写。可以通过在正则表达式的开头添加 (?i) 来使邮件域不区分大小写,因此简单形式 @example.com 的不区分大小写版本将是 (?i).*@example\.com(?i)@example\.com

支持的主机

支持的主机用于:

  • 构建SAML集成元数据中的ACS和单点注销URL。
  • 确保集成仅呈现给使用这些主机登录的用户。

您可以从为您的注册配置的主机中进行选择。

映射属性

将SAML响应映射到Foundry,确保传递足够且正确的用户属性。

用户属性

在SAML登录过程中,用户通过身份提供商进行身份验证后,将向Foundry发送SAML响应。此SAML响应包含用户的属性(也称为“声明”),如姓名、电子邮件及任何可用的附加信息。这些属性以属性键到值(例如 emailuser@example.com)或值的映射形式发送。

为了使Foundry拥有正确的用户属性值,您必须将身份提供商属性(或“声明”)映射到匹配的Foundry属性。Foundry要求以下映射:

  • ID: 默认设置为 NameID。此值应始终出现在SAML断言中,并具有静态唯一值。
  • 用户名: 默认设置为 NameID,但可以更改为不同的可读属性(例如,Azure AD的 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name)。
  • 电子邮件: 应映射到电子邮件属性(例如,Azure AD的 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress)。
  • 名: 应映射到名字属性(例如,Azure AD的 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname)。
  • 姓: 应映射到姓氏属性(例如,Azure AD的 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname)。

查看 Azure ADOkta 的参考映射。

可以通过点击添加属性映射来设置更多的映射以在Foundry中创建更多用户属性。在左侧字段输入Foundry中的属性名称,在右侧字段输入身份提供商中的属性名称。

对于每个映射,都有一个切换开关,让您选择当属性在SAML响应中有多个值时的行为。此开关可以设置为第一个(将用接收到的第一个值填充属性)或全部(将用接收到的所有值填充属性)。

提供商组

您还可以配置Foundry基于身份提供商属性(称为“提供商组”)创建组,允许您在Foundry中镜像现有的组成员资格。您可能还需要额外配置您的提供商以在SAML响应中包含组属性。

要为提供商组设置映射,请在组属性映射下点击添加属性映射。当用户登录时,配置属性的每个值将被镜像为提供商组,用户将被注册为成员。

非必填地,您可以设置一个正则表达式模式来提取组,如果组被作为单个值而不是列表发送。例如,使用 [^,]+ 以逗号分隔的组。

高级设置

异步用户管理器

异步用户管理器(AUMs)是在登录流程中可配置的额外步骤。展开异步用户管理器以查看可用的AUMs。

登录检查点

创建一个登录检查点会在用户登录时重定向到一个可配置的提示,可以要求用户提供理由,然后再允许登录继续。要启用登录检查点,首先切换打开登录检查点 AUM,然后按照步骤创建一个检查点

配置SAML 2.0集成

要配置一个新的SAML集成,请参阅以下身份提供商的具体步骤:

疑难解答

“登录失败,找不到合适的身份验证提供商。请联系您的管理员以获取进一步帮助。”出错

该出错表明用户输入的用户名不匹配在控制面板中配置并允许的任何身份验证提供商邮件域。这也可能意味着用户尝试登录的主机未被添加为其配置的身份验证提供商的支持的主机