0811-7.1.3-如何使用Ranger给HDFS授权


文档编写目的
本篇文章Fayson主要介绍如何使用Ranger 给HDFS 授权 。

  • 文档概述
1.介绍CDP7.1.3 中Ranger 中HDFS 默认权限策略
2.使用Ranger 给HDFS 设置权限策略并验证
  • 测试环境
1.操作系统Redhat7.6
2.CDP DC7.1.3
Ranger中HDFS默认权限策略
使用admin用户登录http://cdp02.fayson.com:6080 页面 , 点击cm_hdfs 进入该页面
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
在该页面中可以看到默认有两个策略 , 第一个是hdfs 用户的策略 , 默认拥有所有目录所有权限 , rangerlookup 拥有所有目录读的权限 。

0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
第二个策略是keyadmin 用户拥有/ranger/audit/kms 目录的所有权 。 这两个策略是CDP安装后自带的策略 , 建议不要随意修改这两个用户的权限策略 。
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
使用Ranger给HDFS设置权限策略并验证
3.1HDFS授权
在上面我们介绍了hdfs 用户拥有所有目录的权限如果还需要设置一个同样权限或者是所有目录的权限 。 需要在该策略中继续添加其他权限策略 , 因为相同目录的策略只能有一个 。
首先我们添加一个用户 , fayson 这里添加使用的脚本所有节点添加了一个fayson用户 。
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
然后在HDFS中勾选 Enable Ranger Authorization, 并保存重启生效
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
在没给权限之前验证如下:
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
设置fayson 拥有所有目录读写的权限 , 设置需要在all-path 策略中新增一个权限条件 。 正确的做法如下:
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
保存策略后 , 点击查看
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
不能如下新增一个策略 , 会提示相同的资源已经创建了一个策略[all-path] , 错误的做法如下:
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
然后进行验证,成功创建
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
3.2HDFS多级授权以及拒绝条件策略
多级授权验证 , 首先创建两个本地测试用户 , testuser1 、testuser2 , 并且在Ranger 页面创建Ranger 登录用户关联组(ldap 用户无需进行该操作即可使用用户密码登录)
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
登录Ranger , 可以看到User Source 时External 。 由于本地Linux 用户默认无法同步密码 , 需在Settings > Users 中将默认同步的Linux 删除 , 然后手动关联组重建 。
0811-7.1.3-如何使用Ranger给HDFS授权
本文插图
点击右上角的红色删除按钮删除后 , 然后点击Add New User。 进行如下操作 , 密码至少为包含英文和字母的8个字母 , 选择角色为User , 并且选择关联组分别为testuser1、和testuser2 。 testuser2 步骤基本一致 , 省略 。


推荐阅读