ElasticSearch _xpack角色管理
权限管理可以通过kibana的Management界面进行,本篇主要介绍的是通过命令进行,角色API使您能够在本机域中添加,删除和检索角色。 要使用此API,您必须至少具有manage_security集群权限。
Roles API现在是管理角色的首选方式。
1、添加角色
要添加角色,请向/ _xpack / security / role / <rolename>端点提交PUT或POST请求
创建名为my_admin_role的角色
POST /_xpack/security/role/my_admin_role { "cluster": ["all"], "indices": [ { "names": [ "index1", "index2" ], "privileges": ["all"], "field_security" : { // optional "grant" : [ "title", "body" ] }, "query": "{\"match\": {\"title\": \"foo\"}}" // optional } ], "run_as": [ "other_user" ], // optional "metadata" : { // optional "version" : 1 } }
name
, cluster
, and indices
在顶层是必需的。 在indices数组中,需要名称和权限字段。 在元数据对象中,以_开头的键被保留用于系统使用。
field_security和query字段都是可选的。 它们用于实现字段和文档级安全性。 有关详细信息,请参阅设置字段和文档级安全性。
一个成功的调用返回一个JSON结构,显示角色是创建还是更新。
2、查询角色
GET /_xpack/security/role/my_admin_role
查询my_admin_role,superuser两个角色
GET /_xpack/security/role/my_admin_role,superuser
查询所有角色:GET /_xpack/security/role
3、删除角色
要删除角色,请向/ _xpack / security / role / <rolename>端点提交DELETE请求
DELETE /_xpack/security/role/my_admin_role
清除角色缓存API从本机角色缓存中排除角色。 要清除缓存的角色,请提交POST请求/ _xpack / security / role / <rolename> / _ clear_cache endpoint:
POST /_xpack/security/role/my_admin_role/_clear_cache