Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用 SAML 2.0 身份提供程序设置单一登录

单点登录 (SSO) 是一种身份验证方法,可让您使用一组登录凭据安全地登录到多个应用程序和网站。

安全断言标记语言 (SAML) 是服务提供商与身份提供商 (IdP) 之间用于身份验证和授权的框架。在这里,使用数字签名的 XML 文档交换身份验证。服务提供商同意信任 IdP 来对用户进行身份验证。作为回报,IdP 会生成一个身份验证断言,指示用户已通过身份验证。

好处

  • 借助 SAML 身份验证,您可以轻松地将瞻博网络 ATP 云与公司 IdP 集成以提供 SSO。如果您已通过 IdP 身份验证,系统会自动向瞻博网络 ATP 云进行身份验证。您无需在每次访问瞻博网络 ATP 云门户时记住单独的密码或输入凭据。

  • 我们仅支持服务提供商发起的 SSO 使用 SAML 协议。瞻博网络 ATP 云作为服务提供商与 SAML 2.0 Web SSO 配置文件兼容。

Step1: 在 IdP 中配置 SSO 设置

示例:将 Okta 配置为 IdP 的 SSO

本部分提供将 Okta 配置为 IdP 的 SSO 的分步说明:

注意:
  • 本部分提供的信息基于 Okta 当前实施的带有 SAML 的 SSO,可能会有所更改。有关详细信息,请参阅 Okta 文档

  • 您必须已经拥有 Okta 的帐户。
  • 您必须以管理员身份登录才能执行以下作。
  1. 登录Okta门户。
  2. 导航到“应用程序”,然后单击 “应用程序”>“创建应用程序集成”
  3. 在“登录方法”部分中,选择“ SAML 2.0 ”,然后单击 “下一步”。
  4. 输入应用程序的常规设置,例如应用程序名称、应用程序徽标和应用程序可见性。单击 “下一步”。
  5. 配置 SAML 设置。有关指南,请参阅 表 1
  6. 单击 “下一步”。
  7. 选择您是客户还是合作伙伴。单击 Finish

    您的应用程序现已添加到 Okta。单击 “登录 ”选项卡。Okta IdP 元数据文件可供下载。您可以使用此元数据文件将 Okta IdP SSO 设置动态导入瞻博网络 ATP 云。

  8. 导航到 目录>组>添加组 并添加组。为每个角色创建单独的组。例如,role_administrator、role_operator、role_observer。

    组名很重要。记下组名,因为它将用于瞻博网络 ATP 云门户中的用户角色映射。参见 表 4

    .
  9. 单击组名称,然后将用户和应用程序添加到组中。
  10. 单击 “管理人员” ,然后从列表中选择用户。现在,用户已从 “非成员 ”列表添加到“ 成员 ”列表。
  11. 点击 保存。现在,用户已分配到该组。
表 1:Okta 的 SSO SAML 设置

描述

常规设置

单一登录 URL

使用 HTTP POST 发送 SAML 断言的位置。这通常称为应用程序的 SAML 断言使用者服务 (ACS) URL。

示例: https://canada.sky.junipersecurity.net/portal/sso/acs

受众 URI(SP 实体 ID)

应用程序定义的唯一标识符,即 SAML 断言的目标受众。这是瞻博网络 ATP 云的服务提供商实体 ID(全局唯一标识符)。

示例: https://canada.sky.junipersecurity.net

默认中继状态

(选答)标识 IdP 发起的单一登录方案中的特定应用程序资源。在大多数情况下,此字段为空。

瞻博网络 ATP 云不支持 IdP 发起的 SSO。建议将此字段留空。

名称 ID 格式

标识断言主题语句的 SAML 处理规则和约束。从列表中选择名称 ID 格式。使用默认值“未指定”,除非应用程序明确要求特定格式。

此字段未在瞻博网络 ATP 云 Web 门户中使用,因此保留默认值。

应用程序用户名

确定用户的应用程序用户名的默认值。应用程序用户名用于断言的 subject 语句。从列表中选择应用程序用户名。

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

高级设置

响应

确定 SAML 身份验证响应消息是否由 IDP 进行数字签名。需要数字签名以确保 IdP 交换的信息的绝对隐私。

您必须将此字段设置为 “已签名”

断言签名

确定 SAML 断言是否经过数字签名。需要数字签名才能确保只有您的 IDP 生成了断言。

您必须将此字段设置为 “已签名”

签名算法

确定用于对 SAML 断言和响应进行数字签名的签名算法。

Okta 提供 RSA-SHA256 和 RSA-SHA1 签名算法。您可以设置任何算法。

注意:

RSA-SHA1 即将被弃用,因此我们建议您设置算法 RSA-SHA256。

摘要算法

确定用于对 SAML 断言和响应进行数字签名的摘要算法。

Okta 提供 SHA256 和 SHA1 摘要算法。您可以设置任何算法。

断言加密

确定 SAML 断言是否已加密。加密可确保除了发送方和接收方之外,没有人可以理解断言。

仅当您计划在瞻博网络 ATP 云 ATP SSO 设置上启用 加密 SAML 响应 时,才必须将此字段设置为加密。

启用单点注销

启用 SAML 单一注销。

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

断言内联挂钩

此字段处于禁用状态。

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

身份验证上下文类

标识断言的身份验证语句的 SAML 身份验证上下文类

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

荣誉力量认证

如果服务提供商请求,提示用户重新进行身份验证。

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

SAML 颁发者 ID

SAML IdP 颁发者 ID

此字段未在瞻博网络 ATP 云中使用,因此保留默认值。

属性语句

当您创建新的 SAML 集成或修改现有集成时,您可以定义自定义属性语句。这些语句将插入到与瞻博网络 ATP 云共享的 SAML 断言中。

  1. 名称 ― 属性的引用名称。最大长度为 512 个字符。Name 属性在所有用户和组属性语句中必须是唯一的。您可以在此处指定瞻博网络 ATP 云的映射。例
    • firstname(可选)
    • 姓氏(可选)
    • 用户名(必填)
    注意:

    username 属性对于瞻博网络 ATP 云是必需的。它用于登录瞻博网络 ATP 云门户。

  2. 名称格式 — name 属性的格式。支持的格式包括:
    1. 未指定 - 可以是 Okta 配置文件定义的任何格式,并且必须由应用程序解释。
    2. URI 引用 - 名称以统一资源标识符字符串的形式提供。
    3. Basic - 一个简单的字符串;如果未指定其他格式,则为默认值。
  3. Value — 由 Name 元素定义的属性值。管理员可以创建自定义表达式(使用 Okta 表达式语言)以引用 Okta 用户配置文件中的值。此字段的最大长度为 1024 个字符。

表 2 提供了示例属性语句。

组属性语句(可选)

如果您的 Okta 组织使用组对用户进行分类,则可以将组属性语句添加到与应用程序共享的 SAML 断言中。

用户组映射到 SAML 响应中的属性语句。group 属性有助于识别哪个用户属于哪个组。

  1. 在 SAML 应用中输入组属性的名称。 示例:角色
  2. 选择名称格式。
  3. 为您的表达式选择筛选选项:开头为、等于、包含或匹配正则表达式
  4. 键入将用于与 Okta GroupName 值匹配并添加到 SAML 断言中的表达式。

您可以为 role_administrtor、role_observer 和 role_operator 创建组属性,并将用户添加到组中。

表 3 中提供了示例组属性语句。

预览 SAML 断言

单击此项可查看将在断言中使用的 Xml 文件。

表 2:Okta 的示例属性语句
名称 、名称、 格式值
名字 未指定 user.firstName(用户.first名称)
姓氏 未指定 user.lastName
电子邮件 未指定 user.email
注意:

firstname 和 lastname 属性是可选的。在瞻博网络 ATP 云 SSO SAML 提供商设置中,您必须设置名为 “用户名属性”的必填字段。无论您计划在瞻博网络 ATP 云中设置什么属性值,都必须在 Okta IdP 中设置相同的属性值,否则 SSO 将失败。

例如,如果您计划在瞻博网络 ATP 云 SSO SAML 提供商设置中将 用户名属性 值设置为 user.email,则必须在 Okta IdP 中将属性值设置为 user.email 的相同属性。

表 3:Okta 的示例组属性语句

名字

名称格式

滤波器

 

角色

未指定

包含

角色

表 4:Okta 中的示例角色映射
Okta 中的角色映射 瞻博网络 ATP 云门户中的角色映射

role_administrator

在瞻博网络 ATP 云门户中配置 SSO 设置时,将管理员字段设置为 role_administrator。

role_operator

在瞻博网络 ATP 云门户中配置 SSO 设置时,将运算符字段设置为 role_operator。

role_observer

在瞻博网络 ATP 云门户中配置 SSO 设置时,将观察者字段设置为 role_observer。

示例:将 Microsoft Azure 配置为 IdP 的 SSO

本部分提供将 Microsoft Azure 配置为 IdP 的 SSO 的分步说明:

注意:
  • 本部分提供的信息基于 Microsoft Azure 当前实施的带有 SAML 的 SSO,可能会有所更改。有关详细信息,请参阅 Microsoft Azure 文档

  • 您必须已拥有 Microsoft Azure 帐户。
  • 您必须以管理员身份登录才能执行以下作。
  1. 登录到 Azure 门户。
  2. 单击 “Azure Active Directory >企业应用程序”
  3. 单击 “+ 新建应用程序> + 创建自己的应用程序”。
  4. 输入应用程序名称,然后单击 “创建”

    新应用程序列在“所有应用程序”页中。

  5. 单击应用程序名称。
  6. 单击“ 分配用户和组”>“添加用户/组”。

    此时将显示“添加分配”页。

  7. 单击 “未选择”。从 “用户和组 ”列表中选择用户和组,然后单击 “选择”
    注意:

    将组分配给应用程序时,只有直接在组中的用户才具有访问权限。分配不会级联到嵌套组。

  8. 单击 “分配”。有关示例用户和组,请参阅 表 5
  9. 导航到 “管理>单一登录> SAML”。按照 表 6 中提供的准则配置设置。
  10. 单击 “测试 ”以检查 SSO 是否正常工作。
    注意:

    必须先将用户添加到“用户”和“组”,然后才能登录。

  11. 导航到 “安全>令牌加密”>“导入证书 ”并上传加密证书。IdP 管理员必须生成并上传证书才能启用令牌加密
表 5:Microsoft Azure 的示例用户和组设置
显示名称 对象类型 分配的角色

role_administrator

用户

role_observer

用户

role_operator

用户

表 6:Microsoft Azure 的 SSO 设置

描述

基本 SAML 配置

标识符(实体 ID)

(必填)默认标识符将是 IDP 发起的 SSO 的 SAML 响应的受众。此值在 Azure Active Directory 租户中的所有应用程序中必须是唯一的

示例: https://amer.sky.junipersecurity.net

回复 URL(断言使用者服务 URL)

(必填)对于 IDP 发起的 SSO,默认回复 URL 将是 SAML 响应中的目标地址。回复 URL 是应用程序期望接收身份验证令牌的位置。这在 SAML 中也称为“断言消费者服务”(ACS)。

示例: https://amer.sky.junipersecurity.net/portal/sso/acs

登录 URL

(选答)此 URL 包含此应用程序的登录页,该应用程序将执行服务提供商发起的 SSO。如果要执行 IdP 发起的 SSO,请将其留空。

中继状态

(选答)中继状态指示应用程序在身份验证完成后将用户重定向到何处,该值通常是将用户带到应用程序内特定位置的 URL 或 URL 路径。此表单中的值仅在 IdP 发起的 SSO 流中生效。

瞻博网络 ATP 云不支持 IdP 发起的 SSO。建议将此字段留空。

用户属性和声明

定义要与 ATP 关联的访问控制组的参数。访问控制组映射到瞻博网络 ATP 角色。

唯一用户标识符

(选答)提供名称 ID。

示例:user.userprincipalname [nameid-format:emailAddress]

+添加新声明

定义 Azure AD 用于填充颁发给瞻博网络 ATP 云的 SAML 令牌的声明。

要添加新声明,请执行以下作:

  1. 点击 + 添加新声明

    此时将显示“管理索赔”页面。

  2. 输入声明名称和命名空间。
  3. 选择源。
  4. 从下拉列表中选择源属性。
  5. (选答)指定声明条件。
  6. 点击 保存

请参阅 表 7

注意:

givenname 和 surname 属性是可选的。在瞻博网络 ATP 云 SSO SAML 提供商设置中,您必须设置名为 “用户名属性”的必填字段。无论你计划在瞻博网络 ATP 云中设置什么属性值,都必须在 Azure IdP 中设置相同的属性值,否则 SSO 将失败。

例如,如果计划在瞻博网络 ATP 云 SSO SAML 提供商设置中将 “用户名属性 ”值设置为 电子邮件地址,则必须在 Azure IdP 中将属性值设置为 user.mail 的相同属性名称。

+ 添加组声明

定义 Azure AD 用于填充颁发给瞻博网络 ATP 云的 SAML 令牌的组声明。

要添加新的组声明,请执行以下作:

  1. 单击 + 添加组声明

    此时将显示“组声明”页面。

  2. 对于与用户关联的组,选择 All groups (所有组)。
  3. 选择 source 属性。
    • 如果源属性为 sAMAccountName,则必须在瞻博网络 ATP 云门户中将角色名称指定为角色映射的属性。例如,role: role_administrator
    • 如果源属性为组 ID,则必须将参考 ID 指定为瞻博网络 ATP 云门户中角色映射的属性。例如,role: abcdef
    注意:
    • source 属性仅适用于使用 AAD Connect Sync 1.2.70.0 或更高版本从本地 Active Directory 同步的组。
    • 如果没有 Azure Active Directory (AD) 来拉取用户和组,请在 Azure IdP 中选择“组 ID”作为源属性,并在“瞻博网络 ATP 云 SSO”设置组属性中提供相应的组 ID。
  4. 选中 “自定义组的名称” 复选框。
  5. 指定名称和命名空间。例如,如果组名为 role,则在 SAML 对瞻博网络 ATP 云的响应中,组名“role”将是密钥,密钥的值将是角色名称,其中将添加用户。
  6. 点击 保存

    创建的组声明角色的值为 user.groups。

SAML 签名证书

地位

显示 Azure AD 用于对颁发给应用程序的 SAML 令牌进行签名的 SAML 证书的状态。

指纹

显示 SAML 证书的指纹。

呼气

显示 SAML 证书的到期日期。

通知电子邮件

显示通知电子邮件地址。

应用联合元数据 URL

显示 SAML 的 Azure IdP 元数据 URL。

示例: https://login.microsoftonline.com/ff08d407-69c4-4850-9af0-29034d31ab36/federationmetadata/2007-06/federationmetadata.xml?appid=6915f8ab-640a-4e1c-bb67-5e81a14f7898

证书 (Base64)

(选答)单击以下载 Base64 证书。

证书(原始)

(选答)单击以下载原始证书。

联合元数据 XML

(选答)单击以下载联合元数据文档。

签名算法

确定用于对 SAML 断言和响应进行数字签名的签名算法。

Azure 提供 RSA-SHA256 和 RSA-SHA1 签名算法。您可以设置任何算法。

注意:

RSA-SHA1 即将被弃用,因此我们建议您设置算法 RSA-SHA256。

设置应用程序(瞻博网络 ATP 云)

登录 URL

显示 Microsoft Azure 的登录 URL。您将被重定向到登录 URL 进行身份验证。

示例: https://login.microsoftonline.com/ff08d407-69c4-4850-9af0-29034d31ab36/saml2

Azure AD 标识符

显示 SAML 断言的目标受众。它是 Azure IdP 的实体 ID(全局唯一标识符)。

示例: https://sts.windows.net/ff08d407-69c4-4850-9af0-29034d31ab36/

注销 URL

显示 Microsoft Azure 的注销 URL

瞻博网络 ATP 云尚不支持此字段。

表 7:为 Azure AD 添加新声明
属性名称 源属性值 说明
名字 user.givenname givenname 属性将用于映射 ATP 云中用户的姓氏。
user.surname surname 属性将用于在 ATP 云中映射用户的姓氏。
电子邮件地址 user.mail  
    emailaddress 属性将用于在 ATP 云中映射用户的电子邮件地址。

步骤 2:在瞻博网络 ATP 云 Web 门户中配置 SSO 设置

请参阅 配置 SSO 设置

步骤 3:激活 SSO 配置

要激活 SSO 配置,请登录瞻博网络 ATP 云门户,导航到 “管理 > 单一登录设置 ”,然后单击 “激活”

步骤 4:测试 SSO 配置

  • 由服务提供商发起的 SSO(瞻博网络 ATP 云)- 使用 SSO 登录瞻博网络 ATP 云 Web 门户。如果您在使用 IdP SSO 进行身份验证之前登录瞻博网络 ATP 云 Web 门户,则基于 ATP 云领域,您将被重定向到 IdP 门户进行身份验证。使用 IdP 进行身份验证后,您将登录到瞻博网络 ATP 云 Web 门户。

  • 身份提供商 - 当您登录 IdP SSO 帐户时,它会提供与 IdP 集成的应用程序列表,您可以访问任何应用程序。例如,如果单击瞻博网络 ATP 云应用程序,系统会定向到瞻博网络 ATP 云 Web 门户。

SSO 配置疑难解答

使用以下信息排查将 SAML 2.0 与瞻博网络 ATP 云搭配使用时出现的错误和问题。

  • 领域
    • SSO 设置是按领域配置的。本地用户和 SAML 用户都可以在一个领域中共存。默认情况下,领域创建者(管理员)是本地用户。

    • 如果由于配置不正确而导致 SSO 失败,并且 SSO 用户无法登录,请联系对该领域具有本地登录访问权限的领域创建者(管理员)。管理员可以使用 ATP 云客户门户 URL 登录并修复领域的 SSO 配置。

  • 角色映射
    • 瞻博网络 ATP 云将“管理员”、“作员”、“观察者”角色设置为用户配置文件创建用例的一部分。

    • 若要使用 IdP 对 ATP 用户进行身份验证,您需要在 IdP 中至少有一个定义 ATP 用户的组,该组最终将映射到 ATP 角色。

    • 用户可以为每种 ATP 角色类型创建一个 IdP 组:“管理员”、“作员”、“观察者”,并在 IdP 配置期间适当地映射角色。

    • 如果用户组与 IdP 上的映射不匹配,则会向用户显示错误消息。

  • 多重身份验证
    • 如果 IdP 提供自己的升级身份验证功能,则 SSO 用户将被重定向到 SSO 站点进行升级身份验证。如果启用了单点登录,则瞻博网络 ATP 云上的多重身份验证将被禁用。

    • 同一领域的本地用户可以继续使用 ATP 的多重身份验证 (MFA)。

  • 密码
    • 忘记密码的 SSO 用户必须登录 IdP 站点才能重置密码。当用户尝试通过提供领域名称进行 SSO 时,ATP 云门户会将用户重定向到 IdP 站点进行身份验证。如果 IdP 站点中的用户身份验证失败。然后,用户必须从 IdP 站点重置密码。

    • 瞻博网络 ATP 云门户中的忘记密码选项适用于未配置 SSO 的领域。