ldap配置支持x-pack有两种格式:

1.  User Search Mode

2. User DN Templates Mode

由于第一种方式需要明文填入ldap管理员账号信息,我这边采用第二种方案 。

elasticsearch配置文件中添加以下配置:

xpack:
security:
authc:
realms:
ldap1:
type: ldap
order: 0
url: "ldap://ldap.xxxxx.net:389"
user_dn_templates:
- "cn={0},ou=People,dc=ldap,dc=xxxxx,dc=net"
group_search:
base_dn: "ou=kibana,dc=ldap,dc=xxxxx,dc=net"
files:
role_mapping: "/etc/elasticsearch/x-pack/role_mapping.yml" #x-pack角色与ldap账户绑定文件
cache.ttl: 3m #指定用户条目的生存时间
unmapped_groups_as_roles: false

第一种方式配置(不推荐):

xpack:
security:
authc:
realms:
ldap1:
type: ldap
order: 0
url: "ldap://ldap.xxxx.net:389"
bind_dn: "cn=Manager,dc=ldap,dc=xxxxx,dc=net"
bind_password: xxxxx
user_search:
base_dn: "ou=People,dc=ldap,dc=xxxxx,dc=net"
attribute: cn
group_search:
base_dn: "ou=kibana,dc=ldap,dc=xxxxx,dc=net"
files:
role_mapping: "/etc/elasticsearch/x-pack/role_mapping.yml"
cache.ttl: 3m
unmapped_groups_as_roles: false

查看/etc/elasticsearch/x-pack/role_mapping.yml 文件内容:

logRead:  #只读,需在kibana面板上创建该角色
- "cn=kibana-software-users,ou=kibana,dc=ldap,dc=xxxxx,dc=net"
superuser: #管理员
- "cn=kibana-software-admin,ou=kibana,dc=ldap,dc=xxxxx,dc=net"

查看kibana上角色信息:

配置完成,默认 xpack 每五秒会检查一次 role_mapping 文件的变化,修改用户权限之后不需要重新加载ES。

使用ldap账号检验角色权限:curl -XGET  -uxxxx.xxx@xxx.com 'localhost:9200/_xpack/security/_authenticate?pretty'

ldap分组:

ldap集成x-pack的更多相关文章

  1. ldap集成bitbucket

    confluence ldap配置跟jira ldap集成一样,请参考:https://www.cnblogs.com/imcati/p/9378668.html 需在 Global permissi ...

  2. ldap集成jenkins

    jenkins版本:2.5.3,ldap插件:1.15 jenkins ldap支持需要安装ldap plugin,强烈建议插件安装版本为1.15及以上(支持ldap 配置测试) 安装插件: 系统管理 ...

  3. ldap集成confluence

    confluence ldap配置跟jira ldap集成一样,请参考:https://www.cnblogs.com/imcati/p/9378668.html

  4. CAS与LDAP集成

    参考文献: CAS集成ldap:https://wiki.jasig.org/display/CASUM/LDAP CAS集成restful api:https://wiki.jasig.org/di ...

  5. apache+svn+ldap集成

    apache+svn搭建方式如下:http://www.cnblogs.com/uglyliu/p/6914056.html SVN和ldap集成,我用的方式只需要更改 /etc/http/conf. ...

  6. ldap 集成harbor

    harbor: 1.6 默认配置文件在harbor.cfg,我们可以先不添加配置,直接在harbor web界面进行配置(harbor 1.6 如果db 启动失败提示postgresql 数据目录已存 ...

  7. ldap集成grafana

    grafana版本: 5.0.3 grafana通过k8s方式安装,所以需将配置文件挂载过去. cat grafana-configmap.yaml apiVersion: v1 kind: Conf ...

  8. ldap集成zabbix

    zabbix版本:3.0.7 ldap认证配置: zabbix管理员登录-->管理-->认证,选择ldap方式 参照以上格式填写,需注意配置完成后需在zabbix上创建与ldap同名账户才 ...

  9. ldap集成jira

    jira默认支持ldap,通过管理员登录jira 点击 User Management --> User Directories --> Add Directory. 进行ldap配置: ...

随机推荐

  1. iOS UI基础 - 20 UITextField

    //找到已经创建好的UITextField UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(, , RFS ...

  2. ios UrlEncode与UrlDecode

    url字符串中具有特殊功能的特殊字符的字符串,或者中文字符,作为参数用GET方式传递时,需要用urlencode处理一下.当然,有时作为Post参数传递,也需要urlencode处理一下. NSStr ...

  3. 12月centos单词

    ---恢复内容开始--- UNreachable:adj.(network server unreachable) 不能达到的; 及不到的; 取不到的; 不能得到的; rsync: rsync [re ...

  4. 迭代器模式(java版)

    迭代器模式的组成部分 Aggregate(抽象聚合类) 它用于存储和管理元素对象,声明一个createiterator()方法用于创建一个迭代器对象,充当抽象迭代器工厂角色. ConcreteAggr ...

  5. jQuery获取点击对象的父级

    一.使用$('body').on('click','.index',function(event){})绑定事件时,例: <div class="project-box"&g ...

  6. [5]传奇3服务器源码分析一GameServer

    1. 2. 留存 服务端下载地址: 点击这里

  7. 14. Longest Common Prefix(暴力循环)

    Write a function to find the longest common prefix string amongst an array of strings. If there is n ...

  8. 页面每隔n分钟轮换一个微信名和微信名

    1.前端index.html <head> <meta charset="UTF-8"> <title>n号循环</title> & ...

  9. linux基础操作

    1.pwd 2.clear 3.who 4.cal 5.uname 6.wc 7.man在线帮助命令 8.--help.info.whatis 9.使用su命令以root身份进入linux 10.Sh ...

  10. linux 安装 Python

    一. 打开终端,输入:wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0b4.tgz 下载完毕后 输入解压命令:tar –zxvf Py ...