新しいファイルを生成するには権限(ACL)のみが必要です。拡張属性も必要ですか?

新しいファイルを生成するには権限(ACL)のみが必要です。拡張属性も必要ですか?

すべてのMac OS Xホームディレクトリのパブリックフォルダに似た一種のドロップポイントでディレクトリを使用したいと思います。つまり、一部のユーザー(または全員)はこのディレクトリに新しいファイルを作成できるはずですが、そうでなければ何もできません。新しいサブディレクトリ、既存のファイルを変更または上書きしない、任意の種類の読み取りを禁止するなど

この問題が発生するシステムは、Solaris CIFSモジュールとSMB共有で共有されるZFSを持つOmniOS / Solarisです。だから私は読んだACLモデルのドキュメントいくつかの試行錯誤の最後にうまくいきます。

/usr/bin/chmod A+user:alice:-w------------:-------:allow /pool/share/dropbox

継承がないと、削除されたファイルは所有者の名前のみを持ちますが、alice所有者は個々のファイルに対する権限を持っていないため、他の場所にはリストされません/usr/bin/ls -V .


これが私が望むタスクを実行している間にこれが正しいアプローチであるかどうか、権限W(拡張属性の書き込み)やA(タイムスタンプ/プロパティの変更)などの他の権限を明示的に追加する必要があるかどうか疑問に思います。

テスト中にディレクトリとファイルに読み取り属性を付与するには追加のACEが必要であることがわかりました(1つは伝播レベルが1つしかないファイル用で、もう1つはディレクトリ自体用です)。

A+user:alice:r-x---aAR-c--s:f--n---:allow
A+user:alice:rwx-----------:-------:allow

今気になります。これらの追加属性値が読み取りに必要な場合は、書き込みにも必要ですか?これから大切なことを失うでしょうか?それともこれはもっと似ていますか?「知らないといけない!」もの?

答え1

調査結果によれば、ACLは最良の選択肢となり得る。

ディレクトリ生成をロックするだけでなく、必要なものすべてを処理する最も簡単な方法は、固定ビットを使用することです。つまり、/tmp および /var/tmp の権限を表示します。

関連情報