背景:
默认情况下,Sentry服务将用户hive
,hue
和impala
作为哨兵管理员。这是Cloudera Manager(CM)sentry.service.admin.group
上的属性。我想添加具有我的用户帐户的用户或组,以便可以成为Sentry管理员。
当前环境:
题:
我已经集成了OpenLDAP,以便可以通过LDAP用户和密码凭据来完成Beeline身份验证。在LDAP集成到HiveServer2之前,我使用root作为Sentry管理员(Beeline在没有LDAP的情况下不会严格检查密码),因此我可以执行
show roles;
和create roles;
这样的命令作为root
。现在集成了LDAP后,我无法以
root
身份登录,因为它在LDAP服务器上没有条目,并且添加了该条目,所以没有选项,因此我想添加一个名为johndoe
的用户作为Sentry的管理员,以便他可以创建角色像root
一样。这是我需要在Postgres级别设置的东西吗?我的意思是通过输入Sentry数据库和
GRANT
在那获得一些特权?到目前为止,我尝试了什么:
sentry.service.admin.group
中使用本地用户的所有组合,将本地用户添加到hive
组,使用LDAP用户,LDAP组-什么都没有! hive
,hue
和impala
标识为管理员。 任何帮助将不胜感激。坚持了十天了。
最佳答案
您需要使用所使用的Unix用户所属的Unix组。 Sentry只能使用Unix组,在Hive,Hue和Impala的情况下,默认配置为hive,hue和impala。
Sentry无法使用LDAP组。您需要在sendry.service.admin.group设置中使用Unix组。
关于apache - 带有LDAP的Cloudera Sentry-无法将用户添加为Sentry管理员,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35305575/