zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

向使用 SAML 和 Okta 的 Open Distro for Elasticsearch Kibana 添加单点登录 (SSO)

2023-03-02 11:13:52 时间

Open Distro for Elasticsearch Security 使用 SAML 2.0 协议的 Web 浏览器单点登录 (SSO) 配置文件。这使您能够使用任何符合 SAML 2.0 的身份提供商 (IdP) 配置联合访问。在前一篇博文中,我讨论了如何使用 Microsoft Active Directory Federation Services (ADFS) 设置基于 SAML 的 SSO。在此博文中,我将讨论特定于 Okta 的配置。

先决条件

 
用户  Okta 组

Open Distro Security 角色

esuser1 ESAdmins all_access
esuser2 ESUsers readall
esuser3 无数据 无数据

 

Okta 配置

在您的 Okta 账户中,点击应用程序 -> 添加应用程序 -> 创建新应用程序

添加新应用程序

在下一个屏幕中,将 Web 应用程序选为类型,将 SAML 2.0 选为身份验证方法,并点击创建。在下一个屏幕中,键入应用程序名称并点击下一步

选择集成类型

在 SAML 设置中,设置单点登录 URL受众 URI(SP 实体 ID)。输入下面的 kibana url 作为 单点登录 URL

https://<kibana_base_url>:<kibana_port>/_opendistro/_security/saml/acs

确保将 kibana_base_urlkibana_port 替换为先决条件中提到的实际 Kibana 配置。在我的设置中,此配置为 https://new-kibana.ad.example.com:5601/...

受众 URI 添加一个字符串。您可以在此选择任何名称。我使用的是 kibana-saml。您将在 Elasticsearch Security 插件 SAML 配置中使用此名称作为 SP-entity-id

saml 设置

您将使用 Okta 的组属性声明将用户的组成员关系从 Okta 传递到 Elasticsearch。将名称设置为“角色”。您选择的名称必须与 Open Distro Security 配置中定义的 roles_key 匹配。点击下一步完成

角色到组的映射

应用程序设置屏幕中,点击身份提供商元数据链接下载元数据 XML 文件并将其复制到 Elasticsearch 配置目录。将 Open Distro Security 的 config.yml 文件中的 idp.metadata_file 属性设置为 XML 文件的路径。该路径必须相对于 config 目录予以指定(您也可以不指定文件,而是指定 metadata_url)。

下载 idp 元数据文件

此元数据文件包含 idp.entity_id

显示实体 ID 的元数据文件

要完成 Open Distro for Elasticsearch Security 的配置,请参阅我的上一篇博文使用 ADFS 添加单点登录。按照该博文中的步骤将 Open Distro Security 角色映射到 Okta 组,更新 Open Distro Security 配置和 Kibana 配置并重新启动 Kibana。Security 配置文件与 Okta 集成的副本如下:

...
        http_enabled: true
        transport_enabled: true
        order: 1
        http_authenticator:
          type: saml
          challenge: true
          config:
 idp: metadata_file: okta-metadata.xml entity_id: http://www.okta.com/exksz5jfvfaUjGSuU356 sp: entity_id: kibana-saml kibana_url: https://new-kibana.ad.example.com:5601/
            exchange_key: 'MIIDAzCCAeugAwIB...'
        authentication_backend:
          type: noop
...

重新启动 Kibana 后,您便可以测试集成。您应遵照 ADFS 博文中所述的相同行为。

okta 登录屏幕

 

kibana esuser2 读取屏幕截图

小结

本文中,我讨论了使用 Okta 的 Kibana 单点登录的 SAML 身份验证。您可以使用类似的程序来配置与任何符合 SAML 2.0 的身份提供商的集成。有关使用 SAML 配置 Open Distro for Elasticsearch Security 的其他配置选项,请参阅 Open Distro for Elasticsearch 文档。

有问题或疑问? 希望参与讨论? 您可以在我们的论坛上获得帮助并讨论 Open Distro for Elasticsearch。您可以在这里提出问题。