温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢
1.文档编写目的
前面Fayson讲了如何安装OpenLDAP及CDH集群集成OpenLDAP等一系列文章,本篇文章主要介绍集成OpenLDAP后的CDH集群在启用Sentry服务后如何为OpenLDAP中的用户进行Sentry授权,在学习本章知识前你需要了解:
《1.如何在CentOS6.5安装OpenLDAP并配置客户端》
《2.OpenLDAP集成SSH登录并使用SSSD同步用户》
《3.如何实现OpenLDAP的主主同步》
《4. 如何为Hive配置OpenLDAP认证》
《5.如何为Impala配置OpenLDAP认证》
《6.如何为Hue配置OpenLDAP认证》
《7.如何在OpenLDAP中实现将一个用户添加到多个组》
1.测试环境描述及创建hive管理员
2.为测试用户授权
3.权限测试
1.CM和CDH版本为5.13.1
2.OpenLDAP版本2.4.40
1.集群已配置集成OpenLDAP
2.集群已启用Sentry服务且配置正常
3.Hue已集成OpenLDAP
4.测试用户已添加至OpenLDAP服务
2.环境描述
在《6.如何为Hue配置OpenLDAP认证》文章中,Fayson是以hive用户为例,这里我们就不在过多的描述了,如下是环境的说明:
hive用户作为超级管理员用户:
将OpenLdap中的faysontest和faysontest2用户同步到Hue中:
使用超级管理员hive用户登录Hue,使用Add/Sync LDAP user”功能同步用户
现在Hue中的用户列表如下:
3.创建Hive超级管理员
1.使用hive用户登录Hue,进入“Security”菜单添加超级管理员角色
2.添加一个admin角色,拥有Hive的所有权限
保存角色完成hive用户超级管理的创建。
3.验证hive用户是否拥有Hive的所有权限
如上图所示可以看到hive用户拥有Hive所有库的权限。
4.为faysontest和faysontest2用户授权
这里我们就简单对这两个用户进行授权,创建两个角色role1和role2,role1拥有default库的所有权限,role2拥有test_db库的所有操作权限。分别将role1角色分配给faysontest用户,将role2角色分配给faysontest2用户。
1.根据上述描述创建role1和role2角色
role1角色:
role2角色:
保存角色列表如下:
5.权限测试
1.使用faysontest用户登录Hue进行测试
faysontest用户只能看到default库
登录成功后可以看到hive的default库下所有的表都已列出来
成功执行Select操作
成功执行INSERT操作
成功执行COUNT操作
选择Impala也能正常查看default库
查看default库下的表,能正常显示所有的表
成功执行SELECT操作
成功执行INSERT操作
成功执行COUNT操作
2.使用faysontest2用户登录Hue
默认所有用户都能看到default库,但faysontest2用户无权限查看default库下的表
可以查看test_db库下所有的表
成功执行SELECT操作
成功向user表中插入数据
成功执行COUNT操作
使用Impala查看,同样可以看到default库,但无法查看default库下的所有表
可以查看test_db库下所有的表
成功执行SELECT操作
成功执行INSERT操作
成功执行COUNT操作
6.总结
关于Sentry权限控制可以参考Fayson前面的文章均有详细介绍:
《如何在CDH未启用认证的情况下安装及使用Sentry》
《如何在CDH启用Kerberos的情况下安装及使用Sentry(一)》
《如何在CDH启用Kerberos的情况下安装及使用Sentry(二)》
《如何使用Sentry管理Hive外部表权限》
《如何使用Sentry管理Hive外部表(补充)》
《如何在Hue中使用Sentry》
提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。
原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操