ES X-Pack密码认证与用户管理

用户数据的安全性一直被人诟病且默认没有密码认证,Elasticsearch在6.8之前官方的X-pack安全认证功能都是收费的,所以很多人都采用Search Guard或者ReadOnly REST这些免费的安全插件对Elasticsearch进行安全认证。从Elasticsearch 6.8开始,Security 纳入 x-pack 的 Basic 版本中,免费使用一些基本的功能。本文将对开启X-pack安全认证与用户管理进行简单的讲解。

一、开启并配置 X-Pack 的认证与鉴权

1.1 在 elasticsearch.yml 配置文件中,添加安全认证相关参数

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

1.2 开启节点证书

bin/elasticsearch-certutil ca   

bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12    

1.3 开启Elasticsearch集群,并初始化Elasticsearch密码

bin/elasticsearch-setup-passwords interactive/auto  

注意: interactive为自定义密码,auto为自动生成密码,推荐使用auto。

二、Privilege

Elasticsearch的角色其实又是通过权限去控制,而Elasticsearch的权限主要分为对cluster和对索引的权限,分表如下:

● Cluster Privileges
   ● all / monitor / manager / manage_index / manage_index_template / manage_rollup
● Indices Privileges
    ● all / create / create_index / delete / delete_index / index / manage / read /write / view_index_metadata

三、用户角色管理

3.1 创建角色

ES X-Pack密码认证与用户管理_第1张图片

3.2 创建ES用户

3.3 查看角色(指定角色名为bdp_role)

ES X-Pack密码认证与用户管理_第2张图片

3.4 查看用户(指定用户名为bdp_user)

ES X-Pack密码认证与用户管理_第3张图片

3.5 删除角色

3.6 删除用户

3.7 修改用户密码

参考文献

https://www.elastic.co/what-is/elastic-stack-security

https://www.elastic.co/guide/en/elasticsearch/reference/current/configuring-stack-security.html

你可能感兴趣的:(ELK,elasticsearch)