ElasticSearch | 集群身份认证 | 用户鉴权

身份认证 | Authentication

认证体系的几种类型
  • 提供用户名和密码
  • 提供秘钥或 Kerberos 票据
Realms

在 ElasticSearch 中的认证服务被称为 Realms,提供了收费和免费两种不同形式的 Realms;

  • 内置 Realms(免费):File / Native(用户名和密码保存在 ElasticSearch 的索引中);
  • 外部 Realms(收费):LDAP / Active Directory / PKI / SAML / Kerberos;

用户鉴权 | RBAC

在 ElasticSearch 中,权限包括索引级,字段级,集群及。

Privilege
  • 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

ElasticSearch Authentication | 举个栗子

运行启动命令 | 开启 xpack

bin/elasticsearch -E node.name=node0 -E cluster.name=geektime -E path.data=node0_data -E http.port=9200 -E xpack.security.enabled=true

运行密码设定命令设置 ES 内置用户及其初始密码

bin/elasticsearch-setup-passwords interactive

访问集群 http://localhost:9200/_cat/nodes
  • 输入用户名和密码就可以访问了;

Kibana Authentication | 举个栗子

设置 Kibana 的用户名及密码
  • 修改配置文件 kibana.yml;
elasticsearch.username: "kibana"
elasticsearch.password: "changeme"
启动 Kibana,使用用户 elastic 登录,密码 elastic

./bin/kibana

写入信用卡信息 | 数据准备
POST orders/_bulk
{"index":{}}
{"product" : "1","price" : 18,"payment" : "master","card" : "9876543210123456","name" : "jack"}
{"index":{}}
{"product" : "2","price" : 99,"payment" : "visa","card" : "1234567890123456","name" : "bob"}
在 Kibana 中 Settings / Security / Roles 中创建角色 read_orders
  • 添加对索引 orders 的 read 权限;
  • Run as privileges 设置成 kibana_user;
  • Minimum privileges for all spaces 设置成 read;
在 Kibana 中 Settings / Security / Users 中创建用户 demo
  • Roles 设置成 read_orders;
退出用户 elastic
用新创建的 demo 用户登录
  • 可以搜索索引 orders;
  • 但是不可以删除;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值