ldap服务器用户组权限,ElasticSearch结合LDAP实现权限、用户管控

本文介绍了如何在ElasticSearch中结合LDAP实现列级别的权限管控。由于SearchGuard的LDAP功能需要付费,作者选择了使用xpack插件,并详细阐述了配置过程,包括ElasticSearch和Kibana的配置、LDAP用户与角色的映射,以及如何通过API创建和管理角色,以限制用户对特定列的访问权限。
摘要由CSDN通过智能技术生成

项目背景

使用ElasticSearch实现数据宽表,处理热交互数据,需要实现权限管控等功能,权限粒度要求精确到列。

最初考虑使用Es的SearchGuard开源插件,发现SearchGuard的LDAP功能需要使用企业版,收费的,并且权限粒度仅支持到索引和type,并不支持列;

后来采用Es提供的xpack插件,想办法处理下,就不收费了。

Es需要安装xpack插件,配置默认用户,修改elastic用户的密码为elastic,后续使用简单点

注意,本文只记录ElasticSearch结合LDAP和内置角色,实现列级别的权限管控,不管SSL和TLS加密传输

ElasticSearch、Kibana配置

/conf/elasticsearch.yml中这么添加

xpack.security.enabled: true

xpack:

security:

authc:

realms:

ldap1:

type: ldap

order: 0

url: "ldap://192.168.13.12"

bind_dn: "cn=root,dc=intelli706,dc=com" #ldap管理账户dn

bind_password: 123456 #ldap管理账户密码

user_search:

base_dn: "dc=intelli706,dc=com" #在这个目录树里面检索用户信息

attribute: uid

group_search:

base_dn: "dc=intelli706,dc=com" # 在这个目录树里面检索组信息

files:

# 下面这个是通过文件方式配置的LDAP用户域和Es内置角色的映射关系

role_mapping: "D:\\elasticsearch\\es-xpack\\esnew\\elasticsearch-6.8.0\\config\\role_mapping.yml"

unmapped_groups_as_roles: false

role_mapping.yml,可配置可不配,就放这里参考下,一般通过api配置映射关系

# Role mapping configuration file which has elasticsearch roles as keys

# that map to one or more user or group distinguished names

#roleA: this is an elasticsearch role

# - groupA-DN this is a group distinguished name

# - groupB-DN

# - user1-DN this is the full user distinguished name

#power_user:

# - "cn=admins,dc=example,dc=com"

#user:

# - "cn=users,dc=example,dc=com"

# - "cn=admins,dc=example,dc=com"

# - "cn=John Doe,cn=other users,dc=example,dc=com"

superuser:

- "cn=admin,ou=person,dc=intelli706,dc=com"

- "cn=zhangyan,ou=person,dc=intelli706,dc=com"

/conf/kibana.yml配置,主要添加了es的用户名密码

elasticsearch.username: "elastic"

elasticsearch.password: "elastic"

再启动ES和kibana后,就需要输入用户名密码才能登陆和访问ES中数据了

LDAP

搭建过程省略;

创建dn时,使用的objectClass是inetOrgPerson

rdn设置为cn=admin, sn=admin, uid=admin, userPassword=admin

使用LDAP Admin windows客户端,连接LDAP服务器,添加组(ou),和模拟用户(cn=admin),生成的dn为 cn=admin,ou=person,dc=intelli,dc=com,简单说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值