CREATOR OWNER とは
CREATOR OWNER は Windows OS の特殊セキュリティグループです。
フォルダに CREATOR OWNER のアクセス権が割り当たっていると、その配下にフォルダやファイルを作成した場合は、その作成ユーザのアクセス権が自動で割当たります。
Windows Server OS の場合はデフォルトで C ドライブに Creator Owner がフルコントロール権限で割当たっています。クライアント OS にはデフォルトでは割り当たっていませんが、手動で付与することが可能です。また、CREATOR OWNER はローカルユーザとしても存在しつつ、ドメインユーザとしても存在します。
CREATOR OWNER を削除する
後述しますが、CREATOR OWNER は意識して付与することにあまりメリットはありません。
一方、CREATOR OWNER 権限を削除する場合は、一般ユーザに郵便ポストのような『ファイル格納のみ』を許可するような構成が取れます。
例えば C:\share をファイル共有し、フォルダの NTFS アクセス権を以下のようにします。
- CREATOR OWNER 権限 ⇒ 削除
- administrator 権限 ⇒ フルコントロール
- 一般ユーザ権限 ⇒ 「ファイルの作成/データの書き込み」「フォルダーの作成/データの追加」
つまり、一般ユーザには、作成/書き込みの権限を与えますが、削除や変更の権限を与えません。
そこへ一般ユーザ t.test が share 直下にフォルダやファイルをドラッグ&ドロップすると、share 直下にファイル「test.txt」を書き込みすることができますが、その後はそのファイルを閲覧も編集も出来なくなってしまいます。
もし CREATOR OWNER がフルコントロールで付与されたままだと、フォルダへのアクセスは出来ませんが、自分が作成したファイルに限っては、Explorer で SMB の直パス「\\192.168.1.201\share\test.txt」と打つと、ファイルが開けますし、編集も出来てしまいます。
なお、CREATOR OWNER が削除されても、その配下に作成されたファイル/フォルダの『所有者』は作成したユーザになります。
つまり所有者と CREATOR OWNER は本質的に違うものだということが分かります。
アクセス権を変更させないために 「変更」権限に落とすのは意味がない
いくつかのサイトで『CREATOR OWNER の権限を「フルコントロール」から「変更」に落とすことで、一般ユーザが直下に作成したフォルダやファイルのアクセス権を変更させないことができる』と紹介されていました。
もし「フルコントロール」のままだと、該当フォルダの下に一般ユーザがフォルダを作成した後、administrator 権限を削除して好き勝手にされてしまう可能性があるため、「変更」権限に落とすことで対処するのだ、という話でした。
「フルコントロール」権限と「変更」権限の違いは、「アクセス許可の変更」および「所有権の取得」の権限が有るか無いか、です。なので理屈としては通ると思われがちです。
ただ、実際にこれを構成してみましたが、効果はありませんでした。
なぜなら、そもそもファイル/フォルダを作成した際に、そのファイル/フォルダの「所有者」はそのユーザになるためです。
Windows にはアクセス権とは別に、「所有者 (所有権)」という考え方があります。所有者にはアクセス権を変更する権限が与えられているため、結局そのファイル/フォルダに対するアクセス権の変更が出来てしまいました。
具体的には、フォルダのプロパティ「セキュリティ」タブ⇒「継承の無効化」ボタンにより継承を無効化し、その後自分にだけフルコントロールを付与することができます。
こうなると administrator でもアクセス不可のフォルダが出来上がります。(ただし、administrator は全てのフォルダ/ファイルの所有者の変更が可能なため、アクセス不可のフォルダの所有者を自分に変更することでアクセス権を取り戻すことができます。詳細は以下を参照。)
一般ユーザがアクセス権を変更させないようにしたいなら
もしファイルサーバで、一般ユーザがアクセス権を変更させないようにしたい、というのであれば対処は簡単です。
NTFS ではなく共有 (SMB/CIFS) のアクセス権で「フルコントロール」から「変更」に落とせばよいのです。
具体的には以下の通りです。
C:\share を右クリックし「プロパティ」を開き、「共有」タブの「詳細な共有」をクリック
「アクセス許可」をクリック
Everyone 等のユーザから「フルコントロール」のチェックを外し「OK」をクリック
これを行うことで、その配下のフォルダを「継承の無効化」などアクセス権を変更しようとすると、以下のエラーが表示されるようになります。
コンテナー内のオブジェクトを列挙できませんでした。アクセスが拒否されています。
コメント
以下の事象で悩んていましたがこちらのサイトですっきり解決しました。
所有者はアクセス権変更が出来てしまうのですね。
・フォルダに共有設定を実施、user01:フルコントロール
・フォルダにNTFSアクセス権を設定、user01:変更
・user01でSMB経由で共有フォルダにアクセス、サブフォルダを作成しアクセス権を変更→変更出来てしまう
(NTFSアクセス権が変更なので変更できない想定)
共有アクセス権は「変更」にとどめるのが良いと再認識しました。
ありがとうございました。
南さん
コメントありがとうございます。おっしゃる通り、NTFSの世界では所有者にアクセス権変更権限が付与されてしまうので、SMBの世界で止めるのが正解のようです。
今後も本サイトをごひいきに。