Hive记录-hive权限控制

时间:2023-01-07 13:15:51

在使用Hive的元数据配置权限之前必须现在hive-site.xml中配置两个参数,配置参数如下:

<property>
<name>hive.security.authorization.enabled</name>
<value>true</value>
</property>
<property>
<name>hive.security.authorization.createtable.owner.grants</name>
<value>ALL</value>
</property>

hive.security.authorization.enabled参数是开启权限验证,默认为false。

hive.security.authorization.createtable.owner.grants参数是指表的创建者对表拥有所有权限。

Hive授权的核心就是用户(User)、组(Group)、角色(Role),Hive中的角色和平常认知的角色是有区别的。Hive中的角色可以理解为一部分有一些相同“属性”的用户或组或角色的集合。这里有个递归的概念,就是一个角色可以是一些角色的集合。

1.创建角色:create role role1;

2.删除角色:drop role role1;

3.授权角色:grant select on database default to role role1;

4.撤销角色权限:revoke select on database default from role role1;

5.将角色授权给用户:grant role role1 to user root;

6.撤销用户的角色:revoke role role1 from user root;

7.授权用户:grant select on database default to user root;

8.撤销用户权限:revoke select  on database default from user root;

9.查看用户的角色:show role grant user root;

10.查看用户的权限:show grant user root;

HIVE权限可选:

ALL 所有权限

ALTER允许修改元数据(modify metadata data of  object)---表信息数据

UPDATE允许修改物理数据(modify physical data of  object)---实际数据

CREATE允许进行Create操作

DROP允许进行DROP操作

INDEX允许建索引(目前还没有实现)

LOCK当出现并发的使用允许用户进行LOCK和UNLOCK操作

SELECT允许用户进行SELECT操作

SHOW_DATABASE允许用户查看可用的数据库