基于Ranger的鉴权
操作场景
本章节指导MRS集群管理员在Ranger创建并设置Elasticsearch的权限控制策略,用于管理Elasticsearch用户对索引的创建和删除等权限。
用户需要拥有对Elasticsearch中指定数据的操作权限,才能够查询数据、更新数据、删除数据。
- 安全模式支持在Ranger中创建策略,普通模式不支持使用Ranger进行权限控制。
- 安全模式新安装的Elasticsearch集群默认采用基于Ranger的鉴权模式。
- 在基于Ranger的鉴权模式下,创建的角色鉴权信息对Elasticsearch服务不起作用。
前提条件
- 已安装Elasticsearch和Ranger服务且运行正常。
- 已根据业务需要规划用户权限。
操作步骤
- 在Ranger中添加Elasticsearch访问权限策略,具体操作参考添加Elasticsearch的Ranger访问权限策略。
- 查看当前默认策略。
- 使用supergroup属组用户、elasticsearch用户或rangeradmin用户登录Ranger管理界面。具体操作请参考登录Ranger管理界面。
- 在首页中单击“ELASTICSEARCH”区域的“Elasticsearch”,可以查看到当前默认策略。
elasticsearch或rangeradmin用户的默认密码请联系系统管理员获取。具体以实际为准。
Elasticsearch包含三个默认策略,默认策略只能由supergroup属组用户、elasticsearch用户或rangeradmin用户进行维护。您可以在“Action”列进行查看和修改。修改默认策略为高危操作,删除默认策略为禁用操作。
表1 默认策略all - index 参数名称
默认值
描述
Policy Name
all - index
策略名称,策略状态默认为enabled,normal。
Policy Label
-
-
Index
*
表示该策略对全部索引生效。
Description
Policy for all - index
-
Audit Logging
Yes
对该策略开启审计。
Allow Conditions
- Select Role:
- Select Group:
- Select User: rangeradmin
- Policy Conditions:
- Permissions: read index delete monitor manage view_index_metadata create create_index write
- Delegate Admin:
授予rangeradmin用户读、写、更新、删除文档、监控、管理、查看索引元数据、创建索引、创建文档以及写入数据的权限。
不允许条件中的用户管理本条策略。
- Select Role:
- Select Group:
- Select User: elasticsearch
- Policy Conditions:
- Permissions: all monitor delete manage view_index_metadata read read_cross_cluster index create delete write delete_index create_index cluster_monitor cluster_manage indices_put indices_search_shards indices_put indices_index cat_index_recovery cat_index_metadata clear_search_scroll asynchronous_search script vector
- Delegate Admin: YES
授予elasticsearch用户所有执行权限。
允许条件中用户管理本条策略。
- Select Role:
- Select Group: supergroup
- Select User:
- Policy Conditions:
- Permissions: all monitor delete manage view_index_metadata read read_cross_cluster index create write delete_index create_index cluster_monitor cluster_manage asynchronous_search script vector
- Delegate Admin: YES
授予supergroup组所有执行权限。
允许条件中用户管理本条策略。
- Select Role:
- Select Group: elasticsearch
- Select User:
- Policy Conditions:
- Permissions: cluster_monitor asynchronous_search create_index
- Delegate Admin:
授予elasticsearch用户组集群监控及创建任意索引的权限。
不允许条件中的用户管理本条策略。
Deny All Other Accesses
False
不拒绝其他所有访问权限。
表2 默认策略task - index 参数名称
默认值
描述
Policy Name
task - index
策略名称,策略状态默认为enabled,normal。
Policy Label
-
-
Index
.*
表示该策略对全部点号开头的索引生效。
Description
Policy for all - path
-
Audit Logging
Yes
对该策略开启审计。
Allow Conditions
- Select Role :
- Select Group: elasticsearch
- Select User:
- Policy Conditions:
- Permissions: index read delete monitor manage create create_index view_index_metadata write
- Delegate Admin: YES
授予elasticsearch组用户读、写、更新、删除文档、监控、管理、查看索引元数据、创建索引、创建文档以及写入数据的权限。
允许条件中用户管理本条策略。
Deny All Other Accesses
False
不拒绝其他所有访问权限。
表3 默认策略owner - index 参数名称
默认值
描述
Policy Name
task - index
策略名称,策略状态默认为enabled,normal。
Policy Label
-
-
Index
index_owner_info .index_owner_info
表示该策略对索引“index_owner_info”和索引“.index_owner_info”生效。
Description
Policy for all - path
-
Audit Logging
Yes
对该策略开启审计。
Allow Conditions
- Select Role :
- Select Group: elasticsearch
- Select User:
- Policy Conditions:
- Permissions: read
- Delegate Admin: YES
授予elasticsearch组用户读的权限。
允许条件中用户管理本条策略。
- Select Role:
- Select Group: supergroup
- Select User:
- Policy Conditions:
- Permissions: all monitor delete manage view_index_metadata read read_cross_cluster index create write delete_index create_index cluster_monitor cluster_manage asynchronous_search script vector
- Delegate Admin: YES
授予supergroup组用户所有执行权限。
允许条件中用户管理本条策略。
Deny All Other Accesses
True
拒绝其他所有访问权限。
基于Ranger鉴权模式下Elasticsearch用户组权限参考表4。