hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

技术hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析这篇文章将为大家详细讲解有关hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析,小编觉得挺实用的,因此分享

本文将详细解释用户在hadoop中拥有CREATE权限构建表后,在没有HDFS文件的情况下ACL访问权限的异常分析。边肖觉得挺实用的,分享给大家参考。希望你看完这篇文章能有所收获。

描述异常

测试环境

1.Redhat7.4

2.CDH6.2.0

3.集群中启用了Sentry和Kerberos。

使用hive administrator在C6集群中创建一个测试库acltest,并将该库的CREATE权限授予ldapff组。ldapff用户在此库下创建的表没有权限通过在命令行使用hadoop命令来访问该表的hdfs目录,这表明没有权限访问它。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

将acltest库的CREATE权限授予ldapff用户。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

使用ldapff用户创建测试表并插入测试数据。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

在命令行使用hadoop命令访问在acltest库下创建的测试表数据目录。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

分析异常

ldapff用户拥有acltest库的CRETATE权限,在该权限下用户创建了测试表,Ldapff用户是测试表的所有者。此时,表/用户/配置单元/仓库/acltest.db目录的父目录的ACL显示如下:

Hadoop fs-getfacl/user/hive/warehouse/ACL test . db

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

从上图可以看到测试表的父目录(/user/hive/warehouse/ACL test . db),ldapff组的访问权限为“Group : ldapff 3360-”。因为ldapff组无权访问表的父目录,所以即使LDAP FF是测试表的所有者,它也不能正常访问相应的HDFS目录。

解决异常

ldapff用户组无法访问目录/用户/配置单元/仓库/acltest.db,所以通过授权SELECT权限解决。

1.为ldapff用户授权acltest库的SELECT权限。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

此时检查acltest库的HDFS路径ACL权限,如下所示:

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

显示ldapff组拥有查看acltest库对应的HDFS的读取和执行权限,并成功显示再次访问测试表的HDFS路径。

Hadoop fs-ls/user/hive/warehouse/ACL test . db/test

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

2.在测试这个问题的过程中,发现删除授予ldapff组的SELECT权限和acltest库对应的HDFS路径的ACL权限发生了变化。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

再次检查测试表的HDFS路径发现,可以再次正常访问:

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

删除授予的CREATE权限并重新授予acltest库CREATE权限后,ACL的权限再次更改。

hadoop中用户有CREATE权限建表后无HDFS文件的ACL访问权限异常分析

关于“用户在hadoop中拥有建表CREATE权限后无HDFS文件ACL访问权限异常分析”的文章在此分享。我希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/139133.html

(0)

相关推荐

  • 如何理解php中echo

    技术如何理解php中echo这篇文章主要介绍“如何理解php中echo”,在日常操作中,相信很多人在如何理解php中echo问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何理解php中e

    攻略 2021年10月22日
  • leetcode 字符串转换整数(leetcode字符串转换整数教学)

    技术LeetCode如何实现罗马数字转整数这篇文章给大家分享的是有关LeetCode如何实现罗马数字转整数的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1 题目描述罗马数字中,字母与数字之间有

    攻略 2021年12月15日
  • jdbc使用过程中常见的问题(简述6步实现jdbc的操作)

    技术如何进行JDBC的实例分析如何进行JDBC的实例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。JDBC例子1,首先在配置文件(sys

    攻略 2021年12月18日
  • 怎么理解JavaScript闭包函数

    技术怎么理解JavaScript闭包函数本篇内容介绍了“怎么理解JavaScript闭包函数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅

    攻略 2021年11月9日
  • 软件设计-迭代器模式

    技术软件设计-迭代器模式 软件设计-迭代器模式JAVA和C++常见数据结构迭代器的使用信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用JAVA内置迭代器和C++中标准模板库(STL

    礼包 2021年12月14日
  • 如何分析Tomcat-CVE-2020-1938复现

    技术如何分析Tomcat-CVE-2020-1938复现本篇文章为大家展示了如何分析Tomcat-CVE-2020-1938复现,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。0x

    攻略 2021年12月8日