Hive权限管理

Hive权限管理

Hive在0.7.0以后的添加了授权功能,

权限类型

名称描述
ALL赋予所有权限
ALTER修改表结构
CREATE创建表权限
DROP删除表或分区的权限
INDEX创建索引
LOCK并发后,锁定和解锁表的权限
SELECT查询表或分区数据权限
SHOW_DATABASE查看所有数据库的权限
UPDATE给表或分区插入或加载数据权限

权限验证开启

如果需要做权限控制就给hive-site.xml添加下面配置

<!-- 默认为false -->
<property>
	<name>hive.security.authorization.enabled</name>
	<value>true</value>
</property>

权限组成

权限操作分为用户,组和角色来控制。

查看当前用户
set system:user.name;
查看当前用户在数据库所拥有的权限
show grant use userName on database default;
给用户分配某数据库建表权限
grant create on database default  to user hadoop
查看用户在某数据库的权限
show grant user hadoop  on database default;

当用户很多的时候,用组进行管理会更加方便

将表加到某个组
create table test_group( a int , b int);
select * from test_group ;
grant select on table test_group to group  userGroup1;
select * from test_group ;

也可以通过角色进行控制

create table test_role( a int , b int);
select * from test_role;
grant select on table test_role to role  userRole1;
select * from test_role;
自动授权

显示使用时,不可能每次都手动去给每个新用户添加权限。
因此,使用下面配置可以自动给用户添加权限。

给所有用户添加所有权限:

<!-- 默认为false -->
<property>
	<name>hive.security.authorization.createtable.owner.grants</name>
	<value>ALL</value>
</property>

给所有用户添加查询,删除表或分区权限:

<!-- 默认为false -->
<property>
	<name>hive.security.authorization.createtable.owner.grants</name>
	<value>select,dtop</value>
</property>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值