当hdfs文件对外是公开的则该其他用户就算没有配置相关的权限一样可以进行相关的操作。
当hdfs文件对外权限是没有开放的,其他用户若需要进行相关操作则需要通过Ranger进行相关权限的配置。

首先  /input赋权 775 权限 下递归赋权750权限  让权限管理交给ranger

测试1  建hive1,hive2用户属于 hivegroup,spark1,spark2 属于sparkgroup

配置权限管理页面

配置 sparkgroup hivegroup 对/input/test1目录有可读可执行权限 排除hivegroup组下的hive1

预期应该是sparkgroup下spark1,spark2对目录有访问权限 hivegroup下hive2有访问权限 Hive1没有权限

实际上 都没有权限  组权限测试无效  将允许权限加入spark1 其他不变

可以看到spark1 已经可以访问了 spark2还是不能访问

测试下删除权限

成功删除 spark2 并没有权限 (组权限也没有生效) 测试下执行权限

给spark1用户 可读可写不可执行权限

目录已经没有 可读的权限了 这个符合期望 接下来继续测试组权限

图中可以看到sparkgroup 组跟spark1对目录具有可读可写可 执行下

看到 spark1 有权限 spark2没有权限 检查namenode 节点 spark1 跟 spark2所属组

再进行测试

Spark2 也有权限了 我们也尝试下 Hive组的

hivegroup组有可写可执行权限 但是hive1 没有权限 (此节点非namenode节点)

都没有权限 到namenode节点查看用户所属的组

我们给hive1 跟Hive2 都加入到hivegroup组里

还是没有权限 检查下原因

这边应该把这个去掉 再试  已经可以了

测试2 服务器节点上不存在用户 使用ranger-admin 创建内部用户权限测试(使用api操作hdfs 目录)

新建testuser55用户

配置权限

使用java api连接hdfs

测试结果有访问权限

测试3  ranger-admin上新建内部虚拟组 添加一些用户 测试用户权限是不是有效

配置权限

查看下namenode 节点下权限是不是写入了

很遗憾 并没有权限 将admin管理页面修改下

再次执行

namenode上没有建用户 虚拟用户可以支持权限 namenode上没有建组 组权限不支持

ranger-hdfs 插件组权限测试的更多相关文章

  1. Apache Ranger对HDFS的访问权限控制的原理分析(一)

    介绍 Aapche Ranger是以插件的形式集成到HDFS中,由Ranger Admin管理访问策略,Ranger插件定期轮询Admin更新策略到本地,并根据策略信息进行用户访问权限的判定.Rang ...

  2. Apache Ranger && HDFS

    Apache Ranger && HDFS 标签(空格分隔): Hadoop HDFS HDFS对于任何Hadoop大数据平台来说都是核心组成部分,为了加强对Hadoop平台的数据保护 ...

  3. 解决从本地文件系统上传到HDFS时的权限问题

    当使用 hadoop fs -put localfile /user/xxx 时提示: put: Permission denied: user=root, access=WRITE, inode=& ...

  4. centos7.0改变用户创建目录组权限

    centos7.0改变用户创建目录组权限可通过umask进行设置. 临时改变可通过umask命令进行设置 永久性改变,可通过修改~/.bash_profile的方式进行调整.

  5. 云计算分布式大数据Hadoop实战高手之路第七讲Hadoop图文训练课程:通过HDFS的心跳来测试replication具体的工作机制和流程

    这一讲主要深入使用HDFS命令行工具操作Hadoop分布式集群,主要是通过实验的配置hdfs-site.xml文件的心跳来测试replication具体的工作和流程. 通过HDFS的心跳来测试repl ...

  6. Maven配置插件跳过测试代码的编译和运行

    Maven配置插件跳过测试代码的编译和运行: <!-- 编译插件 --> <plugin> <groupId>org.apache.maven.plugins< ...

  7. linux 学习-用户&群组&权限

    Linux用户&群组&权限  ⦁ Linux安全性模型   1)Linux使用User和Group控制使用者对文件的存取权限   2)用户使用账号和口令登录Linux   3) ...

  8. # openVPN+LDAP AD认证,组权限管理

    # openVPN+LDAP AD认证,组权限管理 原创内容http://www.cnblogs.com/elvi/p/7661178.html # openVPN+LDAP AD认证,组权限管理 # ...

  9. HDFS客户端的权限错误:Permission denied

    报错:Permission denied: user=root, access=WRITE, inode="hadoop":hadoop:supergroup:rwxr-xr-x ...

随机推荐

  1. 负载分配—DNS的域名解析

    DNS(Domain Name System)是因特网的一项服务,它作为域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网.人们在通过浏览器访问网站时只需要记住网站的域名即可,而不需 ...

  2. Netty+WebSocket 获取火币交易所数据项目

    Netty+WebSocket 获取火币交易所时时数据项目 先附上项目项目GitHub地址 spring-boot-netty-websocket-huobi 项目简介 本项目使用 SpringBoo ...

  3. 【Python-Django】Jinja2模板引擎配置教程详解!!!!

    Jinjia2的官方文档:http://jinja.pocoo.org/docs/2.10/ 1. 安装Jinja2扩展包 $ pip install Jinja2 2. 配置Jinja2模板引擎 T ...

  4. Downgrade extraction on phones running Android 7/8/9

    Now it's more and more difficult for forensic tools to extract evidence from smartphone running Andr ...

  5. Python实现网络多人聊天室

    网络多人聊天室 文件结构: chatroom ├── client.py  # 客户端代码 ├── language.py  # 语言文件 ├── server.py  # 服务端代码 └── set ...

  6. Java基础之二十 并发

    20.1 并发得多面性 并发编程令人困惑的一个主要原因:使用并发时需要解决的问题有多个,而实现并发的方法也有多种,并且在这两者之间没有明显的映射关系. 20.1.1 更快的执行 速度问题初听起来很简单 ...

  7. Flink 从0到1学习 —— Flink 中如何管理配置?

    前言 如果你了解 Apache Flink 的话,那么你应该熟悉该如何像 Flink 发送数据或者如何从 Flink 获取数据.但是在某些情况下,我们需要将配置数据发送到 Flink 集群并从中接收一 ...

  8. Spring 源码学习(一)-容器的基础结构

    关注公众号,大家可以在公众号后台回复“博客园”,免费获得作者 Java 知识体系/面试必看资料 展示的代码摘取了一些核心方法,去掉一些默认设置和日志输出,还有大多数错误异常也去掉了,小伙伴想看详细代码 ...

  9. hive分桶表bucketed table分桶字段选择与个数确定

    为什么分桶 (1)获得更高的查询处理效率.桶为表加上了额外的结构,Hive 在处理有些查询时能利用这个结构.具体而言,连接两个在(包含连接列的)相同列上划分了桶的表,可以使用 Map 端连接 (Map ...

  10. MongoDB之数据库备份与恢复

    MongoDB之数据备份与恢复 一,需求 一段时间备份数据库数据,以防意外导致数据丢失 二,备份与恢复 2.1,数据库备份 1,常用命令格式 mongodump -h IP --port 端口 -u ...