分享

sentry oozie的配置问题

grinsky 发表于 2016-6-28 13:15:51 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 3 8446
CM+CDH5.7.0#启用了kerberos、hdfs ACL、hdfs的sentry同步

配置了sentry后在hue中无法看到hive中的表

参考了cloudera官网上的一篇文章,设置并没生效。该文章链接:

使用hadoop fs -setfacl 时对其他的文件及目录都生效,就是对/user/hive及其内的目录文件都不生效
也没有报错,这个是只能通过sentry去设置了么?

刚接触sentry,不知道要任何去sentry中设置权限呢?coludera官网给了些sentry的命令,但不知道怎么进入sentry啊?
就是不知道在哪里输入执行那些命令……

还有oozie部分也找不到头绪,麻烦大家帮帮忙。或者推荐下相关的资料……

已有(3)人评论

跳转到指定楼层
qcbb001 发表于 2016-6-28 15:31:27
楼主只要改变一个观念即可。Sentry 并非通过命令,而是 使用 Policy file 定义实现访问权限的控制,创建 Policy file sentry-provider.ini 实现的


更多参考
Hadoop:Sentry概念及架构分析



回复

使用道具 举报

grinsky 发表于 2016-6-28 16:12:24
额 我用的sentry service
现在通过beeline,创建了role并对role进行了授权,但怎么把role和user关联起来呢?
[mw_shl_code=applescript,true]0: jdbc:hive2://hadoop1:10000/default> show grant role admin;
INFO  : Compiling command(queryId=hive_20160628160000_c344268d-7dba-4a4c-ac2d-707811351a77): show grant role admin
INFO  : Semantic Analysis Completed
INFO  : Returning Hive schema: Schema(fieldSchemas:[FieldSchema(name:database, type:string, comment:from deserializer), FieldSchema(name:table, type:string, comment:from deserializer), FieldSchema(name:partition, type:string, comment:from deserializer), FieldSchema(name:column, type:string, comment:from deserializer), FieldSchema(name:principal_name, type:string, comment:from deserializer), FieldSchema(name:principal_type, type:string, comment:from deserializer), FieldSchema(name:privilege, type:string, comment:from deserializer), FieldSchema(name:grant_option, type:boolean, comment:from deserializer), FieldSchema(name:grant_time, type:bigint, comment:from deserializer), FieldSchema(name:grantor, type:string, comment:from deserializer)], properties:null)
INFO  : Completed compiling command(queryId=hive_20160628160000_c344268d-7dba-4a4c-ac2d-707811351a77); Time taken: 0.094 seconds
INFO  : Executing command(queryId=hive_20160628160000_c344268d-7dba-4a4c-ac2d-707811351a77): show grant role admin
INFO  : Starting task [Stage-0:DDL] in serial mode
INFO  : Completed executing command(queryId=hive_20160628160000_c344268d-7dba-4a4c-ac2d-707811351a77); Time taken: 0.033 seconds
INFO  : OK
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| database  | table  | partition  | column  | principal_name  | principal_type  | privilege  | grant_option  |    grant_time     | grantor  |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
| *         |        |            |         | admin           | ROLE            | *          | true          | 1467097375480000  | --       |
+-----------+--------+------------+---------+-----------------+-----------------+------------+---------------+-------------------+----------+--+
1 row selected (0.16 seconds)[/mw_shl_code]


回复

使用道具 举报

grinsky 发表于 2016-6-28 17:27:29
grinsky 发表于 2016-6-28 16:12
额 我用的sentry service
现在通过beeline,创建了role并对role进行了授权,但怎么把role和user关联起来 ...

汗,在系统里新增一个组(就是把role授权给的那个组)然后在系统中给用户新增一个附加组就可以正常使用了。

例如:
在beeline中我将admin授予 administrators
GRANT ROLE admin TO GROUP administrators;


然后再系统中新增一个组
groupadd administrators
然后给用户添加组
usermod -a -G administrators hive


然后再使用这个用户登陆hue、hive都可以正常使用了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条