设置 SAML 登录帐户

配置 SAML 登录帐户(之前称为企业级登录帐户)等组织特定登录帐户后,组织成员可以通过访问组织内部系统时所用的相同登录帐户登录到 ArcGIS Online。 使用此方法设置组织特定登录帐户的优势在于:成员无需在 ArcGIS Online 系统内创建其他登录帐户;而是可使用已在组织中设置的登录帐户。 当成员登录到 ArcGIS Online 时,可直接将其组织特定的用户名和密码输入到组织的登录帐户管理器(也称组织身份提供者 (IDP))中。 验证成员的凭据之后,IDP 将通知 ArcGIS Online 正在登录的成员的验证身份。

ArcGIS Online 支持使用 SAML 2.0 配置 SAML 登录帐户。 SAML 是一种在 IDP(您的组织)与服务提供者 (SP) 之间安全地交换身份验证和授权数据的开放标准 - 有这种情况下,ArcGIS OnlineSAML 2.0 协议兼容,并且与支持 SAML 2.0 的 IDP 相集成。

可以ArcGIS Online 登录页面配置为仅显示 SAML 登录帐户,或同时显示 SAML 登录帐户和以下任意选项:ArcGIS 登录帐户、OpenID Connect 登录帐户(如果已配置)和社交登录帐户(如果已配置)。

要确保安全配置 SAML 登录帐户,请参阅 SAML 安全性最佳实践

在大多数情况下,组织使用单一 IDP 设置其 SAML 登录帐户。 该 IDP 会对访问托管于多个服务提供者的受保护资源的用户进行身份验证。 IDP 和所有服务提供者都由同一个组织进行管理。

注:

当有新版本的 ArcGIS OnlineSAML 签名和加密证书可用时,管理员必须更新至新证书

对具有 SAML 登录帐户的用户进行身份验证的另一种方法是将您的组织配置为使用基于 SAML 的 IDP 联合。 在多个组织之间基于 SAML 的联合中,每个成员组织都会继续使用他们自己的 IDP,但会将其 SP 中的一个或多个配置为专门在联合内部工作。 要访问在联合内共享的受保护资源,用户需要使用其归属组织的 IDP 来验证身份。 成功通过身份验证后,经验证的身份将提交至托管受保护资源的 SP。 验证用户的访问权限之后,SP 将授予其对资源的访问权限。

SAML 登录体验

ArcGIS Online 支持启动 SP 的 SAML 登录帐户和启动 IDP 的 SAML 登录帐户。 每种帐户的登录体验不同。

启动 SP 的登录

借助启动 SP 的登录帐户,成员可使用其 ArcGIS Online SP 登录帐户或 ArcGIS 登录帐户直接访问其 SAML 网站以及查看登录选项。 如果成员选择 SP 选项,则将被重新定向到网页(称为登录帐户管理器),系统将在此提示成员输入其 SAML 用户名和密码。 验证成员的凭据之后,IDP 将通知 ArcGIS Online 正在登录的成员的验证身份,然后将成员重新定向回其 ArcGIS Online 网站。

如果成员选择 ArcGIS 选项,则将显示 ArcGIS Online 的登录页面。 随即成员便可输入其 ArcGIS 用户名和密码以访问网站。

启动 IDP 的登录

借助启动 IDP 的登录帐户,成员可使用其帐户直接访问并登录其组织的登录帐户管理器。 当成员提交其帐户信息时,IDP 将直接向 SAML 发送 ArcGIS Online 响应。 随即成员将登录并被重新定向到其 ArcGIS Online 网站,成员可在该网站中立即访问资源,而无需再次登录到组织。

使用 ArcGIS 帐户直接从登录帐户管理器进行登录的选项不适用于 IDP 登录帐户。 要使用 ArcGIS 帐户登录到 ArcGIS Online,成员需要直接访问其 ArcGIS Online 网站。

SAML IDP

下列教程演示了通过 SAML 使用 ArcGIS Online 兼容 IDP 的方法:

配置 SAML 登录帐户

下面介绍了通过 ArcGIS Online 配置 IDP 的过程。 继续进行操作之前,建议联系您的 IDP 或 IDP 联合的管理员以获取配置所需的参数。 例如,如果组织使用 Microsoft Active Directory,则要配置或启用 IDP 侧的 SAML 并获取在 ArcGIS Online 侧上进行配置所需的参数,您应联系负责 Microsoft Active Directory 的管理员。

  1. 确认您是否以组织管理员的身份登录。
  2. 单击站点顶部的组织,然后单击设置选项卡。
  3. 如果您打算允许成员自动加入,请先为新成员配置默认设置。 如有必要,您可以在特定成员加入组织后为其更改这些设置
    1. 单击页面一侧的新成员默认值
    2. 选择新成员的默认用户类型和角色。
    3. 选择附加许可,以在成员加入组织时自动分配成员。
    4. 选择成员加入组织时会将其添加到的群组。
    5. 如果组织已启用配额预算,将每个新成员的配额分配设置为指定的配额数或无限制。
    6. 选择是否启用新成员的 Esri 访问权限。

      帐户已启用 Esri 访问权限的成员可以使用 My Esri、参加培训课程、参与 Esri Community、向 ArcGIS 博客添加评论并管理来自 Esri 的电子邮件通信。 成员无法启用或禁用其自己对这些 Esri 资源的访问。

  4. 单击页面一侧的安全性
  5. 登录部分中,单击新建 SAML 登录帐户
  6. 在显示的窗口中,选择以下选项之一:
    • 一位身份提供者 - 允许用户使用您的组织所管理的其现有 SAML 凭据进行登录。 这是最常见的配置。
    • 身份提供者联合 - 允许属于现有组织间联合(例如 SWITCHaai 联合)的用户使用联合支持的凭据进行登录。
  7. 单击下一步
  8. 如果选择了一位身份提供者,请执行以下操作:
    1. 输入组织名称
    2. 选择拥有 SAML 登录帐户的成员加入 ArcGIS Online 组织的方法:自动加入或通过邀请加入。 自动选项允许成员通过使用其 SAML 登录帐户进行登录来加入组织。 使用邀请选项,可通过 ArcGIS Online 生成电子邮件邀请,其中含有关于如何加入组织的说明。 如果选择自动选项,仍可邀请成员加入组织,也可以使用其 SAML ID 直接将其添加至组织
    3. ArcGIS Online 提供 IDP 的相关元数据信息。

    通过指定 ArcGIS Online 要访问的源以获取 IDP 的相关元数据信息来实现此目的。 该信息有三个可能的源:

    • URL - 输入一个能够返回有关 IDP 元数据信息的 URL。
    • 文件 - 上传一个包含有关 IDP 元数据信息的文件。
    • 此处指定的参数 - 通过提供以下参数直接输入有关 IDP 的元数据信息:
      • 登录 URL(重定向) - 输入 ArcGIS Online 应用于允许成员进行登录的 IDP URL(支持 HTTP 重定向绑定)。
      • 登录 URL (POST) - 输入 ArcGIS Online 应用于允许成员进行登录的 IDP URL(支持 HTTP POST 绑定)。
      • 证书 - 为 IDP 提供以 BASE 64 格式编码的证书。 借助此证书,ArcGIS Online 可以验证其从 IDP 接收到的 SAML 响应中的数字签名。
    注:

    如需帮助确定需要提供哪个元数据信息的源,请联系 IDP 管理员。

  9. 如果已选择身份提供者联合,请执行以下操作:
    1. 输入联合的名称。
    2. 选择拥有 SAML 登录帐户的成员加入 ArcGIS Online 组织的方法:自动加入或通过邀请加入。 自动选项允许成员通过使用其 SAML 登录帐户进行登录来加入组织。 使用邀请选项,可通过 ArcGIS Online 生成电子邮件邀请,其中含有关于如何加入组织的说明。 如果选择自动选项,仍可邀请成员加入组织,也可以使用其 SAML ID 直接将其添加至组织
    3. 输入由联合托管的集中 IDP 发现服务的 URL - 例如 https://wayf.samplefederation.com/WAYF
    4. 输入联合元数据的 URL,该元数据是参与联合的所有 IDP 和 SP 的元数据的聚合。
    5. 复制并粘贴以 Base64 格式编码的证书,组织可通过该证书验证联合元数据的有效性。
  10. 单击显示高级设置来配置以下适用的高级设置:
    • 加密声明 - 启用此选项以向 SAML IDP 指示 ArcGIS Online 支持加密 SAML 声明响应。 启用此选项后,IDP 将对 SAML 响应的声明部分进行加密。 尽管已使用 HTTPS 对 SAML 接收和发送的所有 ArcGIS Online 通信进行了加密,但是此选项仍会添加其他加密图层。
    • 启用签名请求 - 启用此选项可使 ArcGIS Online 对发送至 IDP 的 SAML 身份验证请求进行签名。 ArcGIS Online 发送的初始登录请求签名允许 IDP 验证是否所有登录请求源自受信任 SP。
    • 向身份提供者传递注销 - 启用此选项可使 ArcGIS Online 使用注销 URL 注销 IDP 中的用户。 输入将在注销 URL 设置中使用的 URL。 如果 IDP 需要对注销 URL 签名,则还必须打开启用签名请求选项。 此选项不可用时,在 ArcGIS Online 中单击注销将注销 ArcGIS Online 而非 IDP 中的用户。 如果未清除用户的 Web 浏览器缓存,则使用 ArcGIS Online 登录选项尝试立即重新登录 SAML 即可实现立即登录,无需向 SAML IDP 提供用户凭据。 这是使用未授权用户或公众可轻松访问的计算机时可以利用的安全漏洞。
    • 登录时更新个人资料 - 启用此选项可自动将储存在 ArcGIS Online 用户个人资料中的帐户信息(全称和电子邮件地址)与从 IDP 接收的最新帐户信息进行同步。 启用此选项后,您的组织可以验证用户何时以 SAML 登录帐户进行登录,IDP 信息自创建帐户起是否已发生更改,以及若已更改,则可相应更新用户的 ArcGIS Online 帐户个人资料。
    • 启用基于 SAML 的群组成员资格 - 启用此选项将允许组织成员在群组创建过程中将指定基于 SAML 的群组链接到 ArcGIS Online 群组。 如果启用此选项,则具有链接至 SAML 群组权限的组织成员可创建 ArcGIS Online 群组,且该群组成员由外部 SAML IDP 管理的 SAML 群组控制。 群组成功链接至基于 SAML 的外部群组后,群组中每个用户的成员资格将在 SAML 声明响应中定义,该响应会在每次用户成功登录时从 IDP 处接收。

      要确保 ArcGIS Online 群组成功链接至外部 SAML 群组,则群组创建者必须输入在 SAML 声明的属性值中返回的外部 SAML 群组的准确值。 通过 SAML IDP 查看 SAML 声明响应,以确定用于引用群组的值。 支持以下用于定义用户的群组成员资格的属性名称(不区分大小写):

      • 群组
      • 群组
      • 角色
      • 角色
      • MemberOf
      • member-of
      • https://wso2.com/claims/role
      • http://schemas.xmlsoap.org/claims/Group
      • http://schemas.microsoft.com/ws/2008/06/identity/claims/groups
      • urn:oid:1.3.6.1.4.1.5923.1.5.1.1
      • urn:oid:2.16.840.1.113719.1.1.4.1.25

      例如,假设登录的用户是 FullTimeEmployees 和 GIS Faculty SAML 群组的成员。 如下所示,在从 IDP 处收到的 SAML 声明中,包含群组信息的属性名称是 MemberOf。 在本例中,为创建链接至 SAML 群组 GIS Faculty 的群组,群组创建人需要输入 GIS Faculty 作为该群组的名称。

      <saml2p:Response>
        ...
        ...
        <saml2:Assertion>
            ...
            ...	  
            <saml2:AttributeStatement>
              ...
              ...	  
              <saml2:Attribute Name="MemberOf">
        	      <saml2:AttributeValue>FullTimeEmployees</saml2:AttributeValue>
      	      <saml2:AttributeValue>GIS Faculty</saml2:AttributeValue>
              </saml2:Attribute>	  
          </saml2:AttributeStatement>
        </saml2:Assertion>
      </saml2p:Response>

      以下是使用 ID 值识别群组的另一个示例:

      <saml2p:Response>
        ...
        ...
        <saml2:Assertion>
            ...
            ...	  
            <saml2:AttributeStatement>
              ...
              ...	  
              <saml2:Attribute Name="urn:oid:2.16.840.1.113719.1.1.4.1.25" FriendlyName="groups">
        	      <saml2:AttributeValue>GIDff63a68d51325b53153eeedd78cc498b</saml2:AttributeValue>
      	      <saml2:AttributeValue>GIDba5debd8d2f9bb7baf015af7b2c25440</saml2:AttributeValue>
              </saml2:Attribute>	  
          </saml2:AttributeStatement>
        </saml2:Assertion>
      </saml2p:Response>

    • 注销 URL - 如果您在之前的步骤中选择了一位身份提供者,则可输入该 IDP URL 用于注销当前登录的用户。 如果 IDP 的元数据文件中已指定此属性,则会自动对其进行设置。
    • 实体 ID - 可更新此值以使用新的实体 ID,以便将您的 ArcGIS Online 组织唯一识别到 SAML IDP 或 SAML 联合。
  11. 完成后,单击保存
  12. 要完成配置过程,请将 ArcGIS Online SP 元数据注册到联合的发现服务(如果适用)和您的 IDP 以与二者建立信任。 此元数据有两种方法获得:
    • 单击下载服务提供者元数据,为组织下载元数据文件。
    • 打开元数据文件的 URL,并在您的计算机上将其另存为 XML 文件。 您可以在编辑 SAML 登录帐户窗口的用于下载服务提供者元数据的链接下查看和复制 URL。

    有关在认证提供者处注册 SP 元数据的说明链接,请参阅上述 SAML IDP 部分。 如果您选择了身份提供者联合,则下载 SP 元数据之后,请与 SAML 联合的管理员联系,以获取有关如何将 SP 元数据集成到联合的聚合元数据文件中的说明。 您还需要从 SAML 联合获取说明,将您的 IDP 注册到联合。

修改或移除 SAML IDP

设置 SAML IDP 后,您可以单击当前已注册 SAML IDP 旁边的配置登录帐户来更新其设置。 在编辑 SAML 登录帐户窗口中更新您的设置。

要移除当前注册的 IDP,请单击 IDP 旁边的配置登录帐户,然后在编辑 SAML 登录帐户窗口中单击删除登录帐户。 移除 IDP 后,可以选择设置新的 IDP 或 IDP 联合。

SAML 安全性的最佳做法

要启用 SAML 登录帐户,可以将 ArcGIS Online 配置为 SAML 身份提供者 (IDP) 的服务提供者 (SP)。 为确保获得可靠的安全性,请考虑实施以下最佳做法。

SAML 登录和注销请求进行数字签名,并对 SAML 声明响应进行签名

签名旨在确保 SAML 消息的完整性,从而在面对中间人 (MITM) 攻击时起到防护作用。 对 SAML 请求进行数字签名还可以确保该请求由受信任的 SP 发送,从而使 IDP 能够更好地处理拒绝服务 (DOS) 攻击。 配置 SAML 登录帐户时,请在高级设置中打开启用签名请求选项。

注:

要启用签名请求,您需要在 SP 所使用的签名证书被更新或替换时更新 IDP。

请配置 SAML IDP 以对 SAML 响应进行签名,以防止 SAML 声明响应在传输过程中发生更改。

注:

要启用签名请求,您需要在 IDP 所使用的签名证书被更新或替换时更新 SP (ArcGIS Online)。

使用 IDP 的 HTTPS 端点

通过内部网络或 Internet 以未加密格式发送的 SP、IDP 和用户浏览器之间的任何通信都可能被恶意行为者拦截。 如果您的 SAML IDP 支持 HTTPS,建议您使用 HTTPS 端点来确保 SAML 登录期间所传输数据的机密性。

SAML 声明响应进行加密

使用 HTTPS 进行 SAML 通信可确保在 IDP 和 SP 之间发送的 SAML 消息的安全性。但是,已登录用户仍然可以通过 Web 浏览器来解码和查看 SAML 消息。 启用声明响应的加密功能可防止用户查看 IDP 与 SP 之间传输的机密或敏感信息。

注:

要启用加密声明,您需要在 SP (ArcGIS Online) 所使用的加密证书被更新或替换时更新 IDP。

安全地管理签名和加密证书

建议您使用具有强密钥的证书对 SAML 消息进行数字签名或加密,并建议每隔三到五年更新或更换证书。