フルコントロールを付けているつもりが特殊なアクセス許可になってしまう

Powershellコマンドプロンプトでファイル/フォルダのフルコントロール権を付けてみたけれど、フルコントロールじゃなくて「特殊なアクセス許可」になってしまうのは継承情報が不足しているからです。

Powershellで System.Security.AccessControl.FileSystemRights]::FullControl 、icaclsで F オプションを指定しても、継承フラグ指定が不足しているとアクセス権が「特殊なアクセス許可」になってしまいます。

特殊なアクセス許可になってる!
特殊なアクセス許可になってる!

本当はこうなって欲しい
本当はこうなって欲しい

継承フラグにObjectInherit、ContainerInheritの両方が付いていないと、フルコントロールを指定してもGUI上でフルコントロールの表示になりません。
つまり、Powershellなら [System.Security.AccessControl.InheritanceFlags]ObjectInheritContainerInherit を-borでビット和したものを、
icaclsなら (OI)(CI)F オプションを指定する必要があると言うことです。

コメントを残す