我正面临着hive分区创建的一些问题,其中权限用户在hdfs中的权限是基于acl的。
1.我在linux中创建了一个普通用户。
2.我在一个外部表引用的目录上递归地授予了他权限。
(例如hdfs dfs -setfacl -R -m default:user:newUserName:rwx / apps / dbname / tblname)
我查看了以递归方式应用的权限,我可以读取和写入
目录,即使我没有任何POSIX相关的权限。即我只有ACLS。
我以newUserName身份登录并启动了hive并运行了“alter table add partition”命令,其中分区的位置是/ apps / dbname / tablename / somefolder
hive响应错误:授权失败:java.security.AccessControlException:对于用户newUserName,路径hdfs://sandbox.hortonworks.com:8020 / apps / dbname / tblname上不允许执行WRITE操作。使用SHOW GRANT获取更多详细信息。
我在这里缺少什么。 dfs.namenode.acls.enabled为true。我认为这就是ACL工作所需的全部内容。我正在使用hortonworks hdp2.1 感谢
答案 0 :(得分:0)
在当前版本的hive(0.13.x)中,尚未添加对HDFS ACL的支持(在Apache Hadoop 2.4中引入)。
请在下面的jira中找到解决上述问题的内容: