利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

阅读数:4 2019 年 12 月 30 日 11:38

利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

AWS 最近发布了 Amazon Elasticsearch Service Amazon Cognito 集成的服务,现在企业用户在使用 Kibana 访问 Amazon Elasticsearch Service 时,可以使用企业目录凭证来进行联合身份认证。

在此系列博客文章中,我们将会不同的身份提供商设置 Amazon Cognito 用户池,包括 Microsoft Active Directory (SAML 2.0)、Auth0 (OIDC) 和 Okta 凭证。

在此文章中,我们将分享 Active Directory (AD) 与 Amazon Cognito 的集成过程。Active Directory 是一项管理用户身份的服务。使用 Amazon Cognito 用户池,您可以扩展自己的目录,从而使 AD 用户能够使用相同的安全凭证登录 Kibana。

下图显示了简要的架构图,我们将通过本博文构建此图。
利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

步骤 1:创建 Active Directory 域来存储用户身份

在本博文中,我们将使用 Active Directory 域来进行用户身份验证。AD 可以由 AWS 托管 Microsoft AD 或本地域控制器托管。Active Directory 域作为 Microsoft Windows Server 产品中的一个组件提供。

如果您没有任何现有目录,您可以在您的本地环境中安装并配置角色,或启动 AWS 托管 Microsoft AD。

步骤 2:在您的域中的 Windows Server 上安装 ADFS

Active Directory Federation Service (ADFS) 是 Windows Server 的一个组件,可使您将 AD 用作 SAML 身份提供商。您可以使用您的本地 AD 或 AWS 托管 Microsoft AD 配置 ADFS。要使用 AWS 托管 Microsoft AD 设置 ADFS 服务器,请按照 AWS 安全博客博文中的步骤操作。

步骤 3:设置 Cognito 用户池和身份池

Kibana 与 Amazon Elasticsearch Service 的 集成可使用 Amazon Cognito 用户池和身份池。将 AD 身份验证与用户池联合之前,我们需要同时准备好用户池和身份池。

AWS 数据库博客的此博文显示如何为 Amazon Elasticsearch Service 上的 Kibana 设置用户池和身份池。请按照文章中的步骤创建 Amazon Elasticsearch Service 域。我们将在配置 ADFS 后更新用户池配置。

步骤 4:配置 ADFS

在此步骤中,我们将 ADFS 添加为 Amazon Cognito 用户池的外部身份提供商。

添加依赖方至 ADFS

  • 登录 Active Director Federation Services (ADFS) 服务器。
  • 服务器管理器(Server Manager中,选择工具(Tools > ADFS 管理(ADFS Management
  • 选择信任关系 > 依赖方信任 > 添加依赖方信任。(Trust Relationships > Relying Party Trusts > Add Relying Party Trust.)

利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

  • “添加依赖方信任向导(Add Relying Party Trust)”随即打开,在欢迎页面中,选择申明感知(Claims Aware

  • 单击启动

  • 选择数据源页面中,选择手动输入依赖方的数据(Enter Data About the Relying Party Manually并单击下一步

  • 指定显示名称页面中,键入依赖方的显示名称(例如 Cognito 用户池)并单击下一步

  • 单击下一步以跳过 ** 配置证书(Configure Certificate)** 页面(您不需要配置证书)。

  • 配置 URL 页面中,执行以下操作:

    • 选择启用对 SAML 2.0 WebSSO 协议(Enable Support for SAML 2.0 WebSSO Protocol)的支持选项。
    • URL 字段中,使用以下格式添加 Amazon Cognito POST 终端节点https://.auth..amazoncognito.com/saml2/idpresponse
    • 单击下一步

利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

    • 配置标识符页面上,执行以下操作:

      复制代码
      * ** 依赖方信任标识符(****Relying Party Trust Identifier****)** 字段中,使用以下格式键入信任标识符:_urn:amazon:cognito:sp:<userpoolId>_
      * 单击 ** 添加 ** > ** 下一步 **

利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana

  • 在 ** 选择访问控制策略(Choose Access Control Policy)** 页面中,为您的域选择适当的访问权:

    • 选择 ** 允许特定组(Choose Access Control Policy)** 并在您的 AD 域中指定一个或多个组,以基于 AD 组限制访问权。
    • 选择允许所有人(Permit Everyone,以允许所有的 AD 域用户访问 Kibana。
    • 请注意,_Amazon Cognito 还具有基于身份提供商所传递的用户信息限制访问权的功能。有关详细信息,请参阅 __ Amazon Elasticsearch Service 文档利用 Active Directory 联合身份访问基于 Amazon Elasticsearch Service 的 Kibana _
  • 单击下一步,并在准备好添加信任(Ready to Add Trust页面上单击下一步 > 关闭

本文转载自 AWS 技术博客。

原文链接: https://amazonaws-china.com/cn/blogs/china/https-aws-amazon-com-cn-blogs-apn-use-amazon-elasticsearch-service-with-kibana-for-identity-federation-active-directory/

欲了解 AWS 的更多信息,请访问【AWS 技术专区】

评论

发布