温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
提示:代码块部分可以左右滑动查看噢
1
文档编写目的
在使用Sentry进行Hive表的权限管理时,在超级管理员下还划分有不同库和表的管理员用户,这个时候拥有这些库的授权权限的角色就可以将这些库和表授权给其他的角色场景。本篇文章Fayson主要介绍WITH GRANT OPTION的使用。
- 测试环境
1.RedHat7.2
2.CM和CDH版本为5.15.0
2
环境准备
1.在Fayson的测试环境创建了两个用户usera和userc
usera属于testa组,userc属于testb组。
2.使用hive用户登录Hive创建两个角色testrolea和testroleb
3.将default.ods_user表的SELECT权限赋予testrolea角色,并授予该角色GRANT权限
4.将testrolea角色授权给testa组
5.将testroleb角色授权给testb组,此时testroleb角色组没有任何权限
以上操作均有hive管理员账号完成。
3
GRANT用户授权给其他角色
1.完成上面步骤后,使用usera用户登录Hive
2.使用usera用户将所拥有的default.ods_user表的SELECT权限授权给testroleb角色
4
userc用户登录验证
1.使用userc用户登录Hive
2.查看userc所能访问的表
3.查看ods_user表数据
4.使用usera用户登录Hue进行授权测试
无法选择testroleb角色组
注:这里有个问题,To role中只能选择该用户组所在的角色
5
总结
1.某个角色拥有WITH GRANT OPTION权限的库和表,它可以将这些库和表授权给其他的角色。
2.通过Hue无法正常的将拥有WITH GRANT OPTION权限的库和表授权给其他的角色,目前应该是Hue的一个BUG。
3.只能通过命令行的方式实现WITH GRANT OPTION授权给其他角色。
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。