温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CDH Sentry 管理Hive鉴权

发布时间:2020-07-28 04:16:35 来源:网络 阅读:12124 作者:wjw870907 栏目:大数据

在CM管理界面上要开启一些选项,这里不做详细说明,网上一查都有,推荐文章http://www.jianshu.com/p/055c40dcb8c5

但仅限于看配置的内容,至于下面的,作者没有详细解释

sentry的权限设置是在hive sql中完成的,需要用Beeline登录,如beeline -u jdbc:hive2://hiveIP:10000 -n user -p passwd

用户名密码属于hive所在的OS服务器,也就是说你要在hiveserver2上建立一个用户并且设置密码才可以登录,进去后默认这几个用户组有admin权限,即进行grant role,show role等

CDH Sentry 管理Hive鉴权

建议服务器上建立一个admin组,然后增加一个用户加入这个组,因为上面几个组可能已经在服务器上存在,且大部分是/bin/false状态,自建用户和组最好

权限设置方法参考https://www.cloudera.com/documentation/enterprise/5-9-x/topics/sg_hive_sql.html#concept_c2q_4qx_p4__section_gpy_pg4_rp

在hive sql里创建的role需要加入group,这个group就是os服务器的group。到这里已经可以针对hive进行权限的设置,但有点麻烦,因为如果有多台hiveserver2

那不是每天机器都要创建一遍用户名和组吗,这个时候就要用ldap进行用户登录,openldap安装方法很多,这里不做详细说明。但是用了ldap后,鉴权的用户和组还是在os服务器上

这里就需要用到sssd和nslcd,做ldap的mapping,原理就是把ldap上的用户缓存到本地,这样不用给ldap过多请求压力,使用命令getent passwd | getent group

CDH Sentry 管理Hive鉴权

可以看出1000开始的uid是ldap上的,本地不用建立,但是本地也有了这个用户,当然这些用户是无法登录的,可以放心

ldap mapping的配置方法参考http://maxshu.lofter.com/post/6c7b3_93f73,作者写的很详细,按照他来不会错

ldap这边我用了双机互为热备模式,贴出部分配置,slapd.conf

###sync###

index entryCSN,entryUUID eq

overlay syncprov

syncprov-checkpoint 1 1  有一天同步一条记录

syncprov-sessionlog 100

serverID 001   两台机器ID要不一样

syncrepl rid=000

  provider=ldap://另一台IP:389

  bindmethod=simple

  binddn="cn=Manager,dc=yonghui,dc=cn"

  credentials=wangjing3344      ldap登录的密码

  searchbase="dc=example,dc=cn"    dn

  schemachecking=off

  type=refreshAndPersist

  retry="60 +"

mirrormode on 

hue类似,开启后可以在hue上直接设置hive权限

CDH Sentry 管理Hive鉴权

如果hue也结合了ldap,但是原来已经建立了一些用户怎么办?在cm里搜索Hue Service Advanced Configuration Snippet (Safety Valve) for hue_safety_valve.ini 增加内容

[desktop]

[[auth]]

backend=desktop.auth.backend.LdapBackend,desktop.auth.backend.PamBackend,desktop.auth.backend.AllowFirstUserDjangoBackend

这样2种方式建立的用户就都可以登录了,但是要注意,原先在hue上建立的用户也要在ldap上配置,不然他在hive sql里是看不到任何数据库的

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI