我有一个运行cdh-5.7.0的集群,并配置了以下设置
使用kerberos的hadoop
具有ldap身份验证的配置单元
具有sentry授权的hive(存储在jdbc derby中的规则)
我的目标是限制用户查看我的系统中存在哪些数据库。例如。:
user-a应该只在执行时看到数据库db-a show databases
user-b应该只在执行时看到数据库db-b show databases
我看了那篇文章https://blog.cloudera.com/blog/2013/12/how-to-get-started-with-sentry-in-hive/ 为了实现这一点。但没有成功。我的成就是
user-a只能从db-a选择表,不能从db-b选择表。
user-b只能从db-b而不能从db-a选择表。
但两者在执行时仍然可以看到db-a和db-b show databases
. 但我想避免这样。
从你那里得到的任何关于规则或设置如何运行的提示?
谢谢,马尔科
1条答案
按热度按时间xlpyo6sf1#
根据您的描述和我从现有设置中学到的知识,在sentry v1.6+的情况下,您需要将以下属性添加到
hive-site.xml
:即使您使用的是cdh5.7,mapr5文档也提供了一些上下文。以及哨兵服务互动。
重新启动配置单元服务后,您应该能够看到预期的结果。