グループの読み取りアクセスの ACL の設定

グループの読み取りアクセスの ACL の設定

私の 2 人の LDAP ユーザー、margaret と pepijn を紹介します。

Pepijn は私の存在しない企業の食物連鎖の最下層に位置しているため、1 つの LDAP グループのみのメンバーです。

pepijn@srv:/$ groups
user

マーガレットは幸運な人の一人です。

margaret@srv:/$ groups
user SVNAccess www-writers book-writers

/files/books のデフォルトの ACL を設定したので、book-writers のメンバーは rwx アクセスを持ち、user のメンバーは r アクセスのみを持ちます。

# file: files/books/
# owner: root
# group: book-writers
user::rwx
group::r--
group:user:r--
group:book-writers:rwx
mask::rwx
other::---
default:user::rwx
default:group::r--
default:group:user:r--
default:group:book-writers:rwx
default:mask::rwx
default:other::---

Margaret は、ファイル /files/books/test.txt にデータを書き込みます。その後、Pepijn はファイルの内容を確認しようとしますが、アクセス拒否エラーが表示されてがっかりします。

ファイルに対して getfacl を実行すると、次の結果が返されます。

# file: files/books/test.txt
# owner: margaret
# group: user
user::rw-
group::r--
group:user:r--
group:book-writers:rwx          #effective:rw-
mask::rw-
other::---

なぜペペインはマーガレットのファイルの内容を見ることができないのでしょうか?

答え1

あなたのfiles/books/ディレクトリは に +x (トラバース) を許可していませんgroup:user

ディレクトリの場合、+r を使用すると内容 (ファイル名) を一覧表示できますが、実際にディレクトリ内まで降りるには +x が必要です (したがって、 までのすべての親に対して +x が必要です/)。

答え2

フォルダーを走査してファイルを読み取るには、ACL にユーザー グループの実行権限を追加する必要があります。

setfacl -m g:user:r-x /files/books

関連情報