如何在CDH 6.3.2 启用Kerberos 中 使用sentry限制 用户读写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在CDH 6.3.2 启用Kerberos 中 使用sentry限制 用户读写相关的知识,希望对你有一定的参考价值。

如何在CDH 6.3.2 启用Kerberos 中 使用sentry 限制用户读写

标签(空格分隔): 大数据平台构建


  • 一: 系统环境介绍
  • 二: CDH6.3.2 启用安装sentry
  • 三: sentry 使用
  • 四:启用sentry测试

一: 系统环境介绍

操作系统
    CentOS7.5x64

cdh/cm 版本
   cm:6.3.1
   cdh:6.3.2 

采用root用户操作

前置条件:
1.CDH集群运行正常

2.集群已启用Kerberos且正常使用

技术图片

##二:CDH6.3.2 启用安装sentry

1.在mysql中创建sentry数据库

# mysql -uroot -pflyfish225
mysql> create database sentry character set latin1;     (这个地方必须是latin1 字符集)
mysql> grant all privileges on sentry.* to ‘sentry‘@‘%‘ identified by ‘sentry_1234‘ with grant option;
mysql> flush privileges;

技术图片

技术图片

技术图片

技术图片

技术图片


技术图片

三: sentry 使用

3.1 在 hive 中使用sentry

1.配置Hive使用Sentry服务

技术图片

2.关闭Hive的用户模拟功能

技术图片

3.2 在impala 中启用sentry

配置Impala使用Sentry

技术图片

3.3 在hue中启用sentry

技术图片

3.4 在hdfs中启用sentry

技术图片

完成以上配置后,回到Cloudera Manager主页,部署客户端配置并重启相关服务。

四:sentry 的测试

4.1创建hive超级用户

使用hive用户登录Kerberos,操作如下

技术图片

1.使用beeline连接HiveServer2

beeline 
!connect jdbc:hive2://localhost:10000/;principal=hive/dev01.lanxintec.cn@LANXIN.COM
create role admin;

技术图片

 grant all on server server1 to role admin;
 grant role admin to group hive;

技术图片

 创建普通账号与开发者账号
注意:集群所有节点必须存在用户与用户组,赋权是针对用户组而不是针对用户。

Linux添加两个用户(所有节点都要执行)
 useradd read
 useradd developer

技术图片

 beeline登录创建账号
 create role read;
 create role developer;

 grant select on server server1 to role read;
 grant select on server server1 to role developer;
 grant insert on server server1 to role developer;
 grant create on server server1 to role developer;

 grant role read to group read;
 grant role developer to group developer;

技术图片

技术图片


创建test表

使用hive用户登录Kerberos,通过beeline登录HiveServer2,创建test表,并插入测试数据

create table test (s1 string, s2 string) row format delimited fields terminated by ‘,‘;

insert into test values(‘a‘,‘b‘),(‘1‘,‘2‘);

技术图片

使用read 账号登录hue 查看 可以 创建 表 报错

技术图片

技术图片


使用developer 登录

既可以 查询 也可以 创建表

技术图片

技术图片

以上是关于如何在CDH 6.3.2 启用Kerberos 中 使用sentry限制 用户读写的主要内容,如果未能解决你的问题,请参考以下文章

0027-如何在CDH集群启用Kerberos

0027-如何在CDH集群启用Kerberos

0031-如何在CDH启用Kerberos的情况下安装及使用Sentry

0032-如何在CDH启用Kerberos的情况下安装及使用Sentry

CDH 6.3.2 开启kerberos 遇到 的坑

CDH 6.3.2 开启kerberos 遇到 的坑