HDFS 上的 ACL 权限问题 \ Linux

ACL permission issue on HDFS \ Linux

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

所有文件夹都是system1用户创建的,文件夹所有者是system 1,组所有者是super group

我已经为具有 rwx 权限的用户 system2 /test/test2 更新了 ACL

当我尝试使用 system2 在 /test/test1 上执行 运行 ls 命令时,我遇到了权限问题

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

我错过了什么?

据我了解,您想向用户 system2 提供对目录 test1 的访问权限,而不提供对 test.

的访问权限

如果是这种情况,您必须向用户 system2 提供对 test 目录的 execute 权限。因此 system2 用户需要以下权限。

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

现在考虑到您的安全问题,如果用户想要访问任何目录,其所有父目录都需要 execute 权限,即让我们采用目录结构 foo/bar/baz。如果您想访问 baz,您需要在 foobar 上拥有 execute 权限。这是因为目录的 execute 权限表示用户可以访问其子目录。

所以如果你只在test上给system2execute,那么这个用户将无法在test目录上做ls,因为 ls 需要 r-x 权限。

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