
# 创建HBase权限角色
#### 操作场景
该任务指导MRS集群管理员在Manager创建并设置HBase的角色。HBase角色可设置HBase管理员权限以及HBase表和列族的读（R）、写（W）、创建（C）、执行（X）或管理（A）权限。
用户需要在HBase中对指定的数据库或表设置权限，才能够创建表、查询数据、删除数据、插入数据、更新数据以及授权他人访问HBase表。
![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
- 本章节适用于MRS 3.x及之后版本。
- 仅开启了Kerberos认证的集群（安全模式）支持创建HBase角色。
- 如果当前组件使用了Ranger进行权限控制，须基于Ranger配置相关策略进行权限管理，具体操作可参考[添加HBase的Ranger访问权限策略](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_1857.html)。
 
#### 前提条件
- MRS集群管理员已明确业务需求。
 
- 已登录Manager。
#### 创建HBase角色
1. 在Manager界面，选择"系统 \> 权限 \> 角色"。 
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0000001210322489.png)
   
   
2. 单击"添加角色"，然后在"角色名称"和"描述"输入角色名字与描述。 
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0000001164604104.png)
   
   
3. 设置角色"配置资源权限"请参见[表1]。
   
   ![](https://support.huaweicloud.com/cmpntguide-mrs/zh-cn_image_0000001164604160.png)
   HBase权限：
   - HBase Scope：对HBase表授权，最小支持设置列的读（R）和写（W）权限。
   
   - HBase管理员权限：HBase管理员权限。
   
   
   ![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
   用户对自己创建的表具有读（R）、写（W）、创建（C）、执行（X）或管理（A）权限。
    表1设置HBase角色资源权限 
   | 任务场景            | 角色授权操作                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   |:---|:---|
   | 设置HBase管理员权限    | 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase"，勾选"HBase管理员权限"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
   | 设置用户创建表的权限      | 1. 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase \> HBase Scope"。  2. 单击"global"。  3. 在指定命名空间的"权限"列，勾选"创建"和"执行"。例如勾选默认命名空间"default"的"创建"和"执行"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | 设置用户写入数据的权限     | 1. 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase \> HBase Scope \> global"。  2. 在指定命名空间的"权限"列，勾选"写"。例如勾选默认命名空间"default"的"写"。HBase子对象默认可从父对象继承权限，此时已授予向命名空间中的表写入数据的权限。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   | 设置用户读取数据的权限     | 1. 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase \> HBase Scope \> global"。  2. 在指定命名空间的"权限"列，勾选"读"。例如勾选默认命名空间"default"的"读"。HBase子对象默认可从父对象继承权限，此时已授予从命名空间中的表读取数据的权限。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   | 设置用户管理命名空间或表的权限 | 1. 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase \> HBase Scope \> global"。  2. 在指定命名空间的"权限"列，勾选"管理"。例如勾选默认命名空间"default"的"管理"。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
   | 设置列的读取或写入权限     | 1. 在"配置资源权限"的表格中选择"*待操作集群的名称* \> HBase \> HBase Scope \> global"，单击指定命名空间显示命名空间的表。  2. 单击指定的表。  3. 单击指定的列族。  4. 确认是否是新建角色？ - 是，在"资源名称"的输入框输入列名称，多个列用英文逗号分隔，勾选"读"或"写"。如果HBase表中不存在同名的列，则创建同名的列后角色将拥有该列的权限。列权限设置完成。  - 否，修改已有HBase角色的列权限，表格将显示已单独设置权限的列，执行[5]。    5. 角色新增列权限，在"资源名称"的输入框输入列名称并设置列的权限。角色修改列权限，可以在"资源名称"的输入框输入列名称并设置列权限，也可以在表格中直接修改列的权限。若在表格中修改了列权限，又同时增加了同名的列权限，则无法保存。角色修改列权限，建议直接修改列的权限。支持搜索功能。   |
      
   
   
4. 单击"确定"完成，返回"角色"。
 
