配置 OpenAM

OpenAMSecurity Assertion Markup LanguageSAML)兼容身份提供者 (IDP)。 您可将 OpenAM 10.1.0 及更高版本配置为 SAMLArcGIS Online 登录帐户的 IDP。 配置过程包含两个主要步骤:将 SAML IDP 注册到 ArcGIS Online,将 ArcGIS Online 注册到 SAML IDP。

注:

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

所需信息

当用户使用 SAML 登录帐户进行登录时,ArcGIS Online 需要从 IDP 处接收某些属性信息。 NameID 属性为强制属性,并且必须由您的 IDP 在 SAML 响应中发送,才能使 ArcGIS Online 的联合身份验证起作用。 由于 ArcGIS Online 使用 NameID 的值唯一标识指定用户,因此建议使用常量值来唯一标识用户。 IDP 中的用户登录时,ArcGIS Online 会在其用户存储中创建用户名为 NameID_<url_key_for_org> 的新用户。 NameID 发送的值中允许使用的字符包括字母数字、_(下划线)、.(点)和 @(at 符号)。 任何其他字符均会进行转义,从而在 ArcGIS Online 创建的用户名中包含下划线。

ArcGIS Online 支持用户的电子邮件地址、群组成员资格、名字以及姓氏从 SAML 身份提供者处流入。 建议您从 SAML IDP 的电子邮件地址进行传递,以便用户能够接收通知。 如果用户日后成为管理员,此操作将很有帮助。 帐户中存在电子邮件地址的用户拥有接收所有管理活动的相关通知以及向其他用户发送加入组织的邀请的权利。

OpenAM 作为 SAML IDP 注册到 ArcGIS Online

  1. 确认您是否以组织管理员的身份登录。
  2. 单击站点顶部的组织,然后单击设置选项卡。
  3. 单击页面左侧的安全性
  4. 登录部分中,单击新建 SAML 登录帐户按钮,然后选择一位身份提供者选项。 在指定属性页面上,输入组织名称(例如,City of Redlands)。 当用户访问组织网站时,此文本将显示为 SAML 登录选项的一部分(例如,使用您的 City of Redlands 帐户)。
    注:

    选择一位标识提供者选项可为您的 ArcGIS Online 组织注册一个 SAML IDP。 要通过多个 IDP 对具有 SAML 登录帐户的用户进行身份验证,请注册基于 SAML 的联合,而非单个 IDP。

  5. 选择自动应管理员的邀请来指定用户加入组织的方式。 选择第一个选项允许用户通过其 SAML 登录帐户登录组织,而不会受到管理员的任何干预;首次登录时,用户的帐户即会自动注册到该组织。 第二个选项需要管理员邀请必要的用户加入该组织。 当用户接收到邀请时,他们可以登录到组织。
  6. 要为 IDP 提供元数据信息,可选择以下三个选项之一:
    • URL - 如果 OpenAM 联合身份验证元数据的 URL 可供 ArcGIS Online访问,请选择此选项。 URL 通常是 https://<host>:<port>/openam/saml2/jsp/exportmetadata.jsp
    • 文件 - 如果 ArcGIS Online 无法访问 URL,请选择此选项。 从以上 URL 获取元数据,将其保存为 XML 文件,然后上传文件。
    • 此处指定的参数 - 如果 URL 或联合身份验证元数据文件无法访问,请选择此选项。 手动输入值并提供所需参数:以 BASE 64 格式编码的登录 URL 和证书。 请联系 OpenAM 管理员获取这些参数。
  7. 配置适用的高级设置:
    • 加密声明 - 如果 OpenAM 将配置为加密 SAML 声明响应,请启用此选项。
    • 启用签名请求 - 启用此选项可使 ArcGIS Online 对发送至 OpenAM 的 SAML 身份验证请求进行签名。
    • 实体 ID - 可更新此值以使用新的实体 ID,以便将您的 ArcGIS Online 组织唯一识别到 OpenAM。
    • 登录时更新个人资料 - 选择此选项可自动将储存在 ArcGIS Online 用户个人资料中的帐户信息(全称和电子邮件地址)与从 IDP 接收的最新帐户信息进行同步。 启用此选项后,您的组织可以验证用户何时以 SAML 登录帐户登录,IDP 信息自创建帐户起是否已发生更改,以及若已更改,则可相应更新用户的 ArcGIS Online 帐户个人资料。
    • 启用基于 SAML 的群组成员资格 - 启用此选项允许组织成员在群组创建过程中将指定基于 SAML 的群组链接到 ArcGIS Online 群组。
    注:

    目前,不支持向身份提供者传递注销注销 URL

  8. 单击保存

ArcGIS Online 作为受信任的服务提供者注册到 OpenAM

  1. OpenAM 中配置托管 IDP。
    1. 登录到 OpenAM 管理控制台。 通常在 https://servername:port/<deploy_uri>/console 上提供。
    2. 常见任务选项卡上,单击创建托管的身份提供者
    3. 创建托管的 IDP,并将其添加到信任圈。 如果已具有信任圈,则可将其添加至现存信任圈,也可以创建新的信任圈。
    4. 默认情况下,托管的 IDP 使用 OpenDJ,即 OpenAM 随附的嵌入式用户存储。 如果要将 OpenAM 连接至诸如 Active Directory 等任何其他用户存储,则需要在主 OpenAM 管理控制台的访问控制选项卡上创建新数据源。
  2. ArcGIS Online 配置为 OpenAM 的受信任服务提供者。
    1. 获取 ArcGIS Online 组织的元数据文件,并将其保存为 XML 文件。

      要获取元数据文件,请以组织管理员身份登录,并打开组织页面。 单击设置选项卡,然后单击页面左侧的安全性。 在登录部分的 SAML 登录帐户下,单击下载服务提供者元数据按钮。

    2. OpenAM 管理控制台的常见任务下,单击注册远程服务提供者
    3. 为元数据选择文件选项,然后上传先前步骤中保存的元数据 XML 文件。
    4. 将此服务提供者添加至您的 IDP 所添加到的同一信任圈。
  3. 配置 NameID 格式以及 OpenAM 需要在对用户进行身份验证后发送至 ArcGIS Online 的属性。
    1. OpenAM 管理控制台中,单击联合身份验证选项卡。 该选项卡包含之前所添加的信任圈,以及服务提供者和 IDP。
    2. 实体提供者下,单击 IDP。
    3. 声明内容选项卡的名称 ID 格式下,验证 urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified 是否列于最上方。 这是 ArcGIS Online 在向 OpenAM 发出 SAML 请求时所要求的 NameID 格式。
    4. 名称 ID 值映射下,对用户配置文件中的属性(例如 mailupn)进行映射,在对用户进行身份验证后,该属性将作为 NameID 返回到 ArcGIS Online

      示例:urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified =upn

    5. 单击 IDP 中的声明处理选项卡。 属性映射程序下,可对用户配置文件中想要发送至 ArcGIS Online 的属性进行配置。

      单击保存,保存 NameID 格式和属性内容更改。

    6. OpenAM 管理控制台的联合身份验证选项卡上,浏览至实体提供者下的 ArcGIS Online 服务提供者。
    7. 如果您在将 OpenAM 作为 SAML IDP 注册到 ArcGIS Online 时选择了高级设置加密声明,请在声明内容选项卡上,选择加密下面的声明选项。
    8. 名称 ID 格式下,验证 urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified 是否列于最上方。 这是 ArcGIS Online 在向 OpenAM 发出 SAML 请求时所要求的 NameID 格式。
    9. 单击 IDP 中的声明处理选项卡。 在属性映射程序下,对用户配置文件中要发送至 ArcGIS Online 的属性进行配置。
    10. 单击保存,保存名称 ID 格式和属性内容更改。
  4. 重新启动部署了 OpenAM 的 web 服务器。