HDFS \ Linux上的ACL权限问题

时间:2020-09-14 15:09:41

标签: hdfs acl

我在HDFS中有3个文件夹结构。

  • 测试
    • Test1
      • Test2

所有文件夹都是由system1用户创建的,文件夹所有者是系统1,组所有者是超级组。

ls command

我具有rwx许可的用户system2在/ test / test2上具有更新的ACL

Get acl

当我尝试在system2的/ test / test1上运行ls命令时,出现权限问题

ls command with system2

仅当我在/ test文件夹上为system2用户设置ACL时,它才能正常工作–但这是安全的,因为system2用户现在可以选择浏览/ test文件夹

我想念什么?

1 个答案:

答案 0 :(得分:0)

根据我的理解,您希望提供对目录system2的用户test1的访问,而不提供对test的访问。

在这种情况下,您必须为execute目录中的用户system2提供test特权。因此,system2用户将需要以下权限。

  • 测试目录-system2> --x
  • test1目录-system2> rwx

现在出于安全性考虑,如果用户要访问任何目录,则其所有父目录都需要execute特权,即让我们采用目录结构foo/bar/baz。如果要访问baz,则需要对executefoo拥有bar特权。这是因为对目录的execute特权表示用户可以访问其子目录。

因此,如果您仅将execute授予system2上的test,则该用户将无法在ls目录上执行test,因为{ {1}}需要ls特权。

供参考-https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html