6.4.6.5 LDAP user authentication

LDAP 可用于身份验证和授权,因此可以在配置的 authc 和 authz 部分中使用。authc 部分用于配置身份验证,这意味着可用于检查用户是否输入了正确的凭证。authz 用于授权,定义如何检索和映射经过身份验证的用户的角色。

编辑elasticsearch.yml文件, 添加如下内容

# X-Pack ldap auth
xpack:
  security:
    authc:
      realms:
        native:
          type: native
          order: 0
        ldap1:
          type: ldap
          order: 1
          url: "ldaps://ldap.example.net:636"
          ssl:
            certificate_authorities: [ "/etc/elasticsearch/certs/wildcard.example.net.crt" ]
          user_search:
            base_dn: "ou=stuff,dc=example,dc=net"
            attribute: uid
          group_search:
            base_dn: "ou=Group,dc=example,dc=net"
            filter: "(&(objectClass=posixGroup)(memberUid={0}))"
            user_attribute: "uid"
          files:
            role_mapping: "role_mapping.yml"
          unmapped_groups_as_roles: false

编辑role_mapping.yml用户角色的绑定文件, 编辑此文件添加如下内容, 可以配置也可以不配置一般通过 API 配置映射关系

Api方式查询ES中的角色

Kibana界面中其实可以在Management界面中管控角色和内置用户, 但是在使用ldap做接入时没有办法使用web进行配置, 只能使用role_mapping.yml 文件进行配置, 当集群节点过多时文件同步也是一个相当麻烦的事情

PS: 使用使用http方式请求时,需要制定Basic Auth的用户名和密码分, 请求如果不带用户名和密码将报403错误。

创建角色

创建一个角色,并给这个角色一个索引权限,能读取索引中的一部分列

返回

查询角色

返回

给用户绑定角色

本质上是创建一个用户和角色的映射关系,就是这个角色和映射关系的名称

返回

查询用户_角色绑定映射关系

返回

查询用户信息

最后更新于

这有帮助吗?