Sentry元数据mysql_数据仓库权限管理 - Sentry

常用命令

1)创建Role

create role role_name;

2)为role赋予privilege

GRANT select ON DATABASE ods to role role_name;

GRANT all ON TABLE TEST to role role_name;

3)将role授予用户组

GRANT ROLE role_name TO GROUP user_group_name;

4)查看权限授予情况

(1)查看所有role(管理员)

SHOW ROLES;

(2)查看指定用户组的role(管理员)

SHOW ROLE GRANT GROUP user_group_name;

(3)查看指定ROLE的具体权限(管理员)

SHOW GRANT ROLE role_name;

场景介绍

用户fanyunli对Hive ODS数据库有读写,修改表结构等所有权限,用户zhaominhui对Hive ODS数据库仅开放读数据权限。

Hive表读写权限使用案例

为admin角色赋予超级权限,并将admin角色授权hive用户组

jdbc:hive2://hadoop1:10000> create role admin;

jdbc:hive2://hadoop1:10000> grant all on server server1 to role admin;

jdbc:hive2://hadoop1:10000> grant role admin to group hive

注:这里必须授权hive用户组为超级用户权限

创建所有权限用户组和读权限用户组

在所有Hive节点创建所有权限用户组all_privilege和读权限用户组reader。

[root@hadoop2]# useradd all_privilege

[root@hadoop2]# passwd all_privilege

[root@hadoop2]# useradd reader

[root@hadoop2]# passwd reader

创建用户fanyunli 和 zhaominhui,并归入对应用户组

在所有Hive节点创建fanyunli和zhaominhui用户,前者归入all_privilege用户组,后者归入reader用户组。

[root@hadoop2]# useradd fanyunli

[root@hadoop2]# passwd fanyunli

[root@hadoop2 ~]# usermod -a -G all_privilege fanyunli

[root@hadoop2]# useradd zhaominhui

[root@hadoop2]# passwd zhaominhui

[root@hadoop2 ~]# usermod -a -G reader zhaominhui

#查看结果,显示fanyunli所在为用户组fanyunli和all_pribilege,zhaominhui所在用户组为zhaominhui和reader.

[root@hadoop1 ~]# id fanyunli

uid=1000(fanyunli) gid=1000(fanyunli) 组=1000(fanyunli),1006(all_privilege)

[root@hadoop1 ~]# id zhaominhui

uid=1007(zhaominhui) gid=1007(zhaominhui) 组=1007(zhaominhui),1001(reader)

创建读权限角色reader和所有权限角色all_privilege,并分别赋予reader用户组和all_privilege用户组

Sentry的三种权限:

SELECT -> 文件的Read权限

INSERT -> 文件的Write权限

ALL -> 文件的Read和Write权限

创建角色及赋予用户组过程:

[root@hadoop1 /opt/cloudera/parcels/CDH-5.7.4-1.cdh5.7.4.p0.2/lib/hive/bin]# ./beeline

beeline> !connect jdbc:hive2://hadoop1:10000

scan complete in 2ms

Connecting to jdbc:hive2://hadoop1:10000

Enter username for jdbc:hive2://hadoop1:10000: hive

Enter password for jdbc:hive2://hadoop1:10000:

Connected to: Apache Hive (version 1.1.0-cdh5.7.4)

Driver: Hive JDBC (version 1.1.0-cdh5.7.4)

Transaction isolation: TRANSACTION_REPEATABLE_READ

创建角色

0: jdbc:hive2://hadoop1:10000> create role reader;

0: jdbc:hive2://hadoop1:10000> create role all_privilege;

赋予角色权限

0: jdbc:hive2://hadoop1:10000> GRANT select ON DATABASE ods TO ROLE reader;

0: jdbc:hive2://hadoop1:10000> GRANT all ON DATABASE ods TO ROLE all_privilege;

将角色授予用户组

0: jdbc:hive2://hadoop1:10000> GRANT ROLE reader to group reader;

0: jdbc:hive2://hadoop1:10000> GRANT ROLE all_privilege TO GROUP all_privilege;

查看所有角色

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值