セント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
ユーザーrw
がjoe
を持っていることを示していますrwx
。rwx
同様の組があるグループがまたある。これらの権限は、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の市民です。