Sentry權(quán)限控制通過(guò)Beeline(Hiveserver2 SQL 命令行接口)輸入Grant 和 Revoke語(yǔ)句來(lái)配置。語(yǔ)法跟現(xiàn)在的一些主流的關(guān)系數(shù)據(jù)庫(kù)很相似。需要注意的是:當(dāng)sentry服務(wù)啟用后,我們必須使用beeline接口來(lái)執(zhí)行hive查詢,Hive Cli并不支持sentry。

CREATE ROLE Statement

CREATE ROLE語(yǔ)句創(chuàng)建一個(gè)可以被賦權(quán)的角色。權(quán)限可以賦給角色,然后再分配給各個(gè)用戶。一個(gè)用戶被分配到角色后可以執(zhí)行該角色的權(quán)限。

只有擁有管理員的角色可以create/drop角色。默認(rèn)情況下,hive、impala和hue用戶擁有管理員角色。

CREATE ROLE [role_name];

DROP ROLE Statement

DROP ROLE語(yǔ)句可以用來(lái)從數(shù)據(jù)庫(kù)中移除一個(gè)角色。一旦移除,之前分配給所有用戶的該角色將會(huì)取消。之前已經(jīng)執(zhí)行的語(yǔ)句不會(huì)受到影響。但是,因?yàn)閔ive在執(zhí)行每條查詢語(yǔ)句之前會(huì)檢查用戶的權(quán)限,處于登錄活躍狀態(tài)的用戶會(huì)話會(huì)受到影響。

DROP ROLE [role_name];

GRANT ROLE Statement

GRANT ROLE語(yǔ)句可以用來(lái)給組授予角色。只有sentry的管理員用戶才能執(zhí)行該操作。

GRANT ROLE role_name [, role_name]    TO GROUP (groupName) [,GROUP (groupName)]

REVOKE ROLE Statement

REVOKE ROLE語(yǔ)句可以用來(lái)從組移除角色。只有sentry的管理員用戶才能執(zhí)行該操作。

REVOKE ROLE role_name [, role_name]    
    FROM GROUP (groupName) [,GROUP (groupName)]

GRANT (PRIVILEGE) Statement

授予一個(gè)對(duì)象的權(quán)限給一個(gè)角色,該用戶必須為sentry的管理員用戶。

GRANT    
    (PRIVILEGE) [, (PRIVILEGE) ]    
    ON (OBJECT) (object_name)   
    
        
		

網(wǎng)友評(píng)論