1、介紹
在hbase中,namespace命名空間指對一組表的邏輯分組,類似rdbms中的database,方便對錶在業務上劃分。apache hbase從0.98.0, 0.95.2兩個版本開始支援namespace級別的授權操作,hbase全域性管理員可以建立、修改和**namespace的授權。
2、namespace
hbase系統預設定義了兩個預設的namespace
hbase:系統內建表,包括namespace和meta表
default:使用者建表時未指定namespace的表都建立在此
建立namespace
hbase>create_namespace 'ai_ns'
刪除namespace
hbase>drop_namespace 'ai_ns'
檢視namespace
hbase>describe_namespace 'ai_ns'
列出所有namespace
hbase>list_namespace
在namespace下建立表
hbase>create 'ai_ns:testtable', 'fm1'
檢視namespace下的表
hbase>list_namespace_tables 'ai_ns'
3、授權
具備create許可權的namespace admin可以對錶建立和刪除、生成和恢復快照
具備admin許可權的namespace admin可以對錶splits或major compactions
授權tenant-a使用者對ai_ns下的寫許可權
hbase>grant 'tenant-a' 'w' '@ai_ns'
**tenant-a使用者對ai_ns的所有許可權
hbase>revoke 'tenant-a''@ai_ns'
當前使用者:hbase
hbase>namespace_create 'hbase_perf'
hbase>grant 'mike', 'w', '@hbase_perf'
當前使用者:mike
hbase>create 'hbase_perf.table20', 'family1'
hbase>create 'hbase_perf.table50', 'family1'
mike建立了兩張表table20和table50,同時成為這兩張表的owner,意味著有'rwxca'許可權
此時,mike團隊的另一名成員alice也需要獲得hbase_perf下的許可權,hbase管理員操作如下
當前使用者:hbase
hbase>grant 'alice', 'w', '@hbase_perf'
此時alice可以在hbase_perf下建立表,但是無法讀、寫、修改和刪除hbase_perf下已存在的表
當前使用者:alice
hbase>scan 'hbase_perf:table20'
報錯accessdeniedexception
如果希望alice可以訪問已經存在的表,則hbase管理員操作如下
當前使用者:hbase
hbase>grant 'alice', 'rw', 'hbase_perf.table20'
hbase>grant 'alice', 'rw', 'hbase_perf.table50'
在hbase中啟用授權機制
hbase-site.xml
hbase.security.authorization
true
hbase.coprocessor.master.classes
org.apache.hadoop.hbase.security.access.accesscontroller
hbase.coprocessor.region.classes
org.apache.hadoop.hbase.security.token.tokenprovider,org.apache.hadoop.hbase.security.access.accesscontroller
配置完成後需要重啟hbase集群
授權相關jira
hbase-8409
hbase-9206
HBase常用操作之namespace
參考 1 介紹 在hbase中,namespace命名空間指對一組表的邏輯分組,類似rdbms中的database,方便對錶在業務上劃分。apache hbase從0.98.0,0.95.2兩個版本開始支援namespace級別的授權操作,hbase全域性管理員可以建立 修改和 namespace的...
Hbase 二 Hbase常用操作
常用shell命令 hbase shell命令 描述alter 修改列族 column family 模式 count 統計表中行的數量 create 建立表describe 顯示表相關的詳細資訊 delete 刪除指定物件的值 可以為表,行,列對應的值,另外也可以指定時間戳的值 deleteall...
hbase常用操作
cd bin start hbase.sh cd bin stop hbase.sh cd bin hbase daemon.sh start rest p 20550 登入zookeeper,如 zkcli.sh ls hbase table lock rmr hbase table lock 你...