hue中实现权限的管理

配置hive-site.xml文件

(一).如果只针对hue生效的话,就只设置hive-site.xml 的 HiveServer2 高级配置代码段(安全阀) ;

(二).如果还针对hive生效的话,还得设置hive-site.xml 的 Hive 客户端高级配置代码段(安全阀);
具体配置如下:
找到chd的hive菜单,进入到配置选项,搜索hive-site.xml 的 HiveServer2 高级配置代码段(安全阀)

#功能:开启权限。
<property>
<name>hive.security.authorization.enabled</name>
<value>true</value>
<description>enable or disable the hive client authorization</description>
</property>
#表的创建者对表拥有所有权限
<property>
<name>hive.security.authorization.createtable.owner.grants</name>
<value>ALL</value>
<description>the privileges automatically granted to the owner whenever a table gets created. An example like"select,drop" will grant select and drop privilege to the owner of the table</description>
</property>
#进行权限控制的配置。
<property>
<name>hive.security.authorization.task.factory</name>
<value>org.apache.hadoop.hive.ql.parse.authorization.HiveAuthorizationTaskFactoryImpl</value>
</property>
#根据代码实现的管理员用户,注意这里一定要加上包名和类名,否则会提示类找不到
<property>
<name>hive.semantic.analyzer.hook</name>
<value>com.xx.hive.HiveAdmin</value>
</property>
注意:一定要重启hive!!!
否则改再多也白费

三、权限设置:

关于权限设置,你可以在hue中进行,也可以在beeline模式下进行,方便起见还是在hue中操作;

首先你需要在hue中创建对应的管理员账户,比如说admin,因为之前的jar包中也是把admin设置为了管理员账户;

其次你也需要创建其他普通用户,比说如user1,user2等;

然后下面这些查询和赋予权限的操作都是在admin账户下进行的,你在管理员账户下赋予普通用户创建、删除、查询的权限等;

最后,关于beeline,你可以使用hue中创建的用户登录beeline,密码什么的beeline不验证(据说是因为hdfs采用了验证用户名模式,所以beeline随了hdfs);

#查看用户admin的是属于哪个角色的;
SHOW ROLE GRANT user admin;
#查看角色selectrole 有哪些权限
show grant role selectrole on database wl;
#查看用户admin 有哪些权限
show grant user admin on database wl;
#一句话搞定查看所有权限
show grant;
#查看所有角色
show roles;
#创建角色
create role testrole;
#删除juese
drop role testrole;
#给角色授权 把数据库wl的查询权限授予selectrole角色
grant select on database wl to role selectrole;
#赋予角色selectrole对数据库wlt做删除权限,包括删除表和删除库的权限
grant drop on database wlt to role selectrole;
#给用户删除具体数据库的权限
grant drop on database mm to user admin;
#赋予角色selectrole创建的权限,此创建无法创建表也无法创建数据库
grant create to role selectrole;
#(之所以无法创建数据库,是因为缺少在代码中createdatabse的权限,这里的创建表是可以创建所有数据库的表);
grant create to user admin;
#给角色添加用户 往角色selectrole中添加用户admin
grant roleselectroleto user admin; 
#收回角色创建的权限
revoke create from role selectrole;
#收回角色查询的权限
revoke select on database wl from role role1;

原文:https://blog.csdn.net/dancaicai/article/details/69524929 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值