一、前置條件
作業系統:CentOS 7.4 minimal
CM版本: 6.2.1
CDH版本:6.2.1
MySQL版本: 5.5.65-MariaDB
JDK: 1.8.0_151
瀏覽器版本: Chrome
記憶體:32G以上
CPU :8core
網路:千兆以上
集群未啟用Kerberos
CDH6.2.1集群運行正常
Kudu已安裝并集成impala
Sentry已安裝并正確配置
二、測驗kudu1.9.0的sentry授權
1、創建admin管理角色
創建admin管理員role,并賦予所有權限,將集群節點impala用戶加入hive用戶組
create role admin_role;
grant all on server server1 to role admin_role;
grant role admin_role to group hive;

2、創建一張kudu表
CEATE TABLE my_first_table
( id BIGINT,
name STRING,
PRIMARY KEY(id))
PARTITION BY HASH PARTITIONS 16
STORED AS KUDU;

3、插入資料
INSERT INTO my_first_table VALUES (1, "lily"), (2, "tom"), (3, "jerry"), (4, "catty");
select * from my_first_table;

4、未授權用戶查詢
使用root用戶連接impala-shell

show tables;
![]()
5、授權用戶查詢權限
1) 創建read_role
使用impala用戶連接impala-shell

create role read_role;

grant role read_role to group root;
grant select on table my_first_table to role read_role;

2) 使用root用戶進行查詢資料
使用root用戶連接impala-shell

show tables;
select * from my_first_table;

查詢資料成功
3) 使用root用戶進行插入資料
使用root用戶連接impala-shell

INSERT INTO my_first_table VALUES (5, "jack");
![]()
插入資料失敗
6、授權用戶插入權限
1) 創建insert_role
使用impala用戶連接impala-shell

create role insert_role;

grant role insert_role to group root;

grant insert on table my_first_table to role insert_role;

取消root 用戶組select權限
revoke select on table my_first_table from role read_role;

2) 使用root用戶進行插入資料
使用root用戶連接impala-shell

INSERT INTO my_first_table VALUES (5, "jack");
![]()
插入資料成功
3) 使用root用戶進行查詢資料
使用root用戶連接impala-shell

select * from my_first_table;
![]()
因為取消了root用戶組查詢權限,故查詢失敗
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/396124.html
標籤:其他
