更新时间:2024-11-29 GMT+08:00

基于用户和角色的鉴权

操作场景

该任务指导MRS集群管理员在Manager创建并设置Elasticsearch的角色。Elasticsearch角色可设置管理员权限以及索引数据的读取和写入权限。

用户需要在Elasticsearch中对指定的数据设置权限,才能够查询数据、删除数据、更新数据。

  • 安全模式支持创建Elasticsearch角色,普通模式不支持创建Elasticsearch角色。
  • 如果当前组件使用了Ranger进行权限控制,须基于Ranger配置相关策略进行权限管理,具体操作可参考添加Elasticsearch的Ranger访问权限策略。普通模式下Elasticsearch不支持使用Ranger进行权限控制。

前提条件

管理员已根据业务需要规划权限。

操作步骤

  1. 登录Manager。
  2. 选择“系统 > 权限 > 角色”。
  3. 单击“添加角色”,然后在“角色名称”和“描述”输入角色名字与描述。
  4. 设置角色“配置资源权限”。

    Elasticsearch权限类型:

    • “SUPER_USER_GROUP”:管理员权限,对所有index有读写权限。
    • “Elasticsearch Scope”:资源管理,对指定的index有读写权限。
    表1 设置角色

    任务场景

    角色授权操作

    设置管理员权限

    在“配置资源权限”的表格中选择“待操作集群的名称 > Elasticsearch”,勾选“SUPER_USER_GROUP”。

    设置用户对指定index的读写权限

    1. 在“配置资源权限”的表格中选择“待操作集群的名称 > Elasticsearch > Elasticsearch Scope”。
    2. 在指定index的“权限”列,勾选“读”和“写”。

  5. 单击“确定”完成,返回角色管理。

    Elasticsearch角色创建成功后,创建一个Elasticsearch用户并绑定角色和用户组。

    Elasticsearch常见用户权限说明可参考表2

    表2 Elasticsearch常见用户权限

    用户组

    角色

    对应用户权限

    • elasticsearch
    • supergroup

    -

    该用户能够创建新的index,且对所有的index有读写权限,同时还对所有的index具有管理权限。

    elasticsearch

    -

    该用户能够创建新的index,且对创建的index有读写权限,同时还对所创建index具有管理权限。

    elasticsearch

    赋予对已创建的index有读写权限的角色

    该用户对自己创建的index和有权限的index均有读写和删除数据权限。但是不能对其他用户创建的index进行管理操作,例如强制flush、迁移shard等。

    -

    赋予Elasticsearch管理员权限的角色

    该用户和Elasticsearch组的用户一样,可以创建index,同时对所有的index都有读写权限。

    supergroup

    -

    该用户可以创建index,并且具有对所有index的读写操作权限。

    -

    赋予对已创建的index有读写权限的角色

    该用户对此index有读写操作权限,但不能对此index进行管理操作,例如强制flush、迁移shard等。

    -

    -

    该用户不能访问Elasticsearch系统资源。