Hbase許可權控制配置及收回許可權

2021-08-07 06:44:01 字數 2110 閱讀 3848

1.hbase的許可權管理需要配置哪些配置檔案?

2.hbase提供的安全管控級別包括哪些?

3.使用哪個命令可實現在hbase中賦值許可權?

4.如何收回許可權?

hbase的許可權管理依賴協協處理器。所以我們需要配置hbase.security.authorization=true,以及hbase.coprocessor.master.classes和hbase.coprocessor.master.classes使其包含org.apache.hadoop.hbase.security. access.accesscontroller來提供安全管控能力。所以需要設定下面引數:

hbase.superuser

hbase

hbase.coprocessor.region.classes

org.apache.hadoop.hbase.security.access.accesscontroller

hbase.coprocessor.master.classes

org.apache.hadoop.hbase.security.access.accesscontroller

hbase.rpc.engine

org.apache.hadoop.hbase.ipc.securerpcengine

hbase.security.authorization

true

複製**

hbase提供的五個許可權識別符號:rwxca,分別對應著read('r'), write('w'), exec('x'), create('c'), admin('a')

hbase提供的安全管控級別包括:

superuser:擁有所有許可權的超級管理員使用者。通過hbase.superuser引數配置

global:全域性許可權可以作用在集群所有的表上。

namespace :命名空間級。

table:表級。

columnfamily:列簇級許可權。

cell:單元級。

和關聯式資料庫一樣,許可權的授予和**都使用grant和revoke,但格式有所不同。grant語法格式:

grant user permissions table column_family column_qualifier

例如,給使用者hive分配對錶member有讀寫的許可權, 在啟用了hbase.security.authorization之後,預設每個使用者只能訪問當前的表。而之前建立的member表的屬主是hbase,其他使用者對其沒有訪問許可權。此時我們通過hive來查詢:

# sudo -u hive hbase shell

> scan 'member'

error: org.apache.hadoop.hbase.security.accessdeniedexception: insufficient permissions (table=member, action=read)

複製**

在hbase中賦值許可權:

> grant 'hive', 'rw', 'member'

0 row(s) in 0.4660 seconds

複製**

然後通過user_permission來檢視許可權

> user_permission

user    table,family,qualifier:permission 

hive   member,,: [permission: actions=read,write]  

複製**

再在hive中進行查詢,此時hive使用者已經可以訪問。

> scan 'member'

row    column+cell

elvis    column=address:city, timestamp=1425891057211, value=beijing……

複製**

收回許可權revoke的語法格式

revoke user table column family column qualifier

複製**

收回hive使用者在表member上的許可權

> revoke 'hive','member'

0 row(s) in 0.1860 seconds

複製**

hbase許可權控制

hbase的許可權管理依賴協協處理器。所以我們需要配置以下引數 hbase.superuser hbase hbase.coprocessor.region.classes org.apache.hadoop.hbase.security.access.accesscontroller hbase....

HBase 許可權控制

hbase的許可權管理依賴協協處理器。所以我們需要配置hbase.security.authorization true,以及hbase.coprocessor.master.classes和hbase.coprocessor.master.classes使其包含org.apache.hadoop....

HBase之許可權控制

hbase支援做許可權訪問控制,hbase的許可權訪問包括以下5種許可權,這裡的scope包含以下幾種,hbase的訪問控制相關命令主要包括grant revoke user permission,其中grant表示授權,revoke表示 許可權,user permission用於查詢許可權。hba...