ACL権限はどのように処理され、特定のユーザー操作にどの順序で適用されますか?

ACL権限はどのように処理され、特定のユーザー操作にどの順序で適用されますか?

セントOS 6.4

ファイルシステムACLルールの処理方法とACLルールの適用順序をよりよく理解したいと思います。

たとえば、ユーザー bob と joe が sales というグループに属しているとします。次の詳細を含む販売文書があるとします。

[root@Maui ~]# getfacl /home/foo/docs/foo.txt
getfacl: Removing leading '/' from absolute path names
# file: home/foo/docs/foo.txt
# owner: jane
# group: executives
user:: r--
user:bob:rw-
user:joe:rwx
group:sales:rwx
group::r--
mask::rwx
other::---

私の質問は、この例では権限がどのように処理され、どのアクセス権が優先的に適用されるかです。

トップダウン検索のみがあり、最初の一致ルールが適用されますか?

それとも、Linuxは関連ユーザーに最も具体的なルールに基づいてアクセスを適用しますか?それとも、最も厳格で適用可能なルールが優先されますか?

ベストアンサー1

これは広範なトピックなので、ここで扱うには内容が多すぎます。私はあなたにお勧めしますLinuxのPOSIXアクセス制御リストホワイトペーパーは、SuSE LabsのAndreas Grünbacherによって作成されました。 ACLがどのように機能するかを理解できるように、トピックをうまく処理して細分化します。

あなたの模範

さて、あなたの例を見て分析しましょう。

  • グループ(販売)
  • 営業チームのメンバー(Bob、Joe)

それでは、ファイルの権限を分析してみましょう/home/foo/docs/foo.txt。 ACLはまた、ほとんどの人がUnixに精通している必要があるのと同じ権限(主にユーザー、グループ、その他のビット)をカプセル化します。だからまずそれらを取り出そう。

user:: r--
group::r--
other::---

これは通常、次の形式で表示されますls -l

$ ls -l /home/foo/docs/foo.txt
-r--r----- 1 jane executives 24041 Sep 17 15:09 /home/foo/docs/foo.txt

次のACL行を使用して、ファイルの所有者とグループが何であるかを確認できます。

# owner: jane
# group: executives

それでは、ACLの特性を見てみましょう。

user:bob:rw-
user:joe:rwx
group:sales:rwx

これは、ユーザーがを持ち、bobユーザーrwjoeを持っていることを示していますrwxrwx同様の組があるグループがまたある。これらの権限は、ls -l出力のユーザー列に3人の所有者(jane、bob、joe)と2つのグループ(エグゼクティブとセールス)があることと同じです。 ACL以外に違いはありません。

最後のmask行:

mask::rwx

この場合、何も隠すことなく広く開いています。したがって、ユーザーbobとjoeに次の行がある場合:

user:bob:rw-
user:joe:rwx

これはこれが有効な権限です。マスクが次のように見える場合:

mask::r-x

その後、有効な権限は次のようになります。

user:bob:rw-    # effective:r--
user:joe:rwx    # effective:r-x

これは、付与された権限を卸売に減らす強力なメカニズムです。

メモ:ファイル所有者および他のユーザーに対する権限は、有効な権限マスクの影響を受けません。したがって、マスキングの観点からは、ACL権限は既存のUnix権限と比較してクラス2の市民です。

引用する

おすすめ記事