2014年2月24日月曜日

NTFSアクセス許可の「サブフォルダーとファイルの削除」が強すぎる

NTFSに詳しい人には当たり前の話かもしれないがメモ。

"test" というフォルダを作成し、そのフォルダの配下に "deleteTest.txt" というファイルを作成する。
 "test" フォルダにて "サブフォルダーとファイルの削除"の許可にチェックを入れる。
Fig.1 上位で "サブフォルダーとファイルの削除" 許可

"deleteTest.txt" にて 上位継承を切り、 "削除" の拒否にチェックを入れる。
Fig.2 下位で "削除" 拒否

ツリーで示すと下図のようになる。
Fig.3 アクセス権設定
この状態でどちらが勝つか。
結果は、"サブフォルダーとファイルの削除" の勝ち。つまり、"deleteTest.txt" は削除できてしまう。
下位のオブジェクトで "削除" を拒否しても全くの無駄
というわけで、あるフォルダの配下のサブフォルダ・ファイルに対して「原則消せるけど、特定のファイルだけ消されたくない」という要件がある場合、"サブフォルダーとファイルの削除" は使わず、
  • 上位フォルダからの継承で "削除" を許可しておく
  • 消されたくない下位フォルダ・ファイルだけ、継承を切って "削除" のチェックを外す
という方法を取る必要がある。
個人的には下位の設定が勝って欲しいんだけど。こういうのって普通は、まず上位の設定が適用された後、下位の設定で上書きされると思うじゃん?

0 コメント:

コメントを投稿