HBase 权限控制

HBase的权限管理依赖协协处理器。所以我们需要配置hbase.security.authorization=true,以及hbase.coprocessor.master.classeshbase.coprocessor.master.classes使其包含org.apache.hadoop.hbase.security. access.AccessController来提供安全管控能力。所以需要设置下面参数(hbase-site.xml配置文件):

<property>

      <name>hbase.superuser</name>
      <value>hbase</value>
</property>
<property>
    <name>hbase.coprocessor.region.classes</name>    
<value>org.apache.hadoop.hbase.security.access.AccessController</value>  </property>
  <property>
    <name>hbase.coprocessor.master.classes</name>
    <value>org.apache.hadoop.hbase.security.access.AccessController</value>
  </property>
  <property>
    <name>hbase.rpc.engine</name>
    <value>org.apache.hadoop.hbase.ipc.SecureRpcEngine</value>
  </property>
<property>
      <name>hbase.security.authorization</name>
      <value>true</value>
  </property>
 
HBase提供的五个权限标识符:RWXCA,分别对应着READ('R')WRITE('W')EXEC('X')CREATE('C')ADMIN('A')
HBase提供的安全管控级别包括:
Superuser:拥有所有权限的超级管理员用户。通过hbase.superuser参数配置
Global:全局权限可以作用在集群所有的表上。
Namespace :命名空间级。
Table:表级。
ColumnFamily:列簇级权限。
Cell:单元级。
 
配置完后启动hbase,并进入hbase shell执行grant 'Administrator' , 'RWCXA'。其中Administrator是外部主机名。
 
 
posted @ 2018-02-04 01:06  Runner_Jack  阅读(747)  评论(0编辑  收藏  举报