ES + Shield + Kibana:文档级别的授权

时间:2015-09-15 05:38:20

标签: kibana-4

在' kibana'我们可以限制特定用户访问特定索引。例如用户' A'只能访问'日志 - *'指数。

我想知道如何为文档级别而不是索引级别实现此类访问的方式。

我搜索了很多,但我没有获得任何文档级授权的解决方案。能帮到我吗?

2 个答案:

答案 0 :(得分:0)

我不确定它是否有效,但你可以尝试一下。在roles.yml中,创建特定于文档级授权的不同角色。例如,

roleA:
'.kibana': 
    indices: 'indexA'
    privileges: read
    fields: 
      - fieldA
      - fieldB
在rolemapping.yml中,

将经过身份验证的用户映射到此相应角色。然后,只有选定的字段才能从弹性搜索中应用于Kibana。

试试这个选项。

答案 1 :(得分:0)

弹性搜索容器中的

usr/share/elasticsearch/bin/shield ./esusers useradd user1 -p userpass -r rolename

之后

在/etc/elasticsearch/shield/roles.yml

中添加角色
rolename:
  cluster: 
      - cluster:monitor/nodes/info
      - cluster:monitor/health 
  indices:
    'logs*':
      privileges: indices:admin/mappings/fields/get, indices:admin/validate/query, indices:data/read/search, indices:data/read/msearch, indices:data/read/field_stats, indices:admin/get
    '.kibana':
      privileges: indices:admin/exists, indices:admin/mapping/put, indices:admin/mappings/fields/get, indices:admin/refresh, indices:admin/validate/query, indices:data/read/get, indices:data/read/mget, indices:data/read/search, indices:data/write/delete, indices:data/write/index, indices:data/write/update