Windows基礎

【図解/Windows】Creator Owner のアクセス権 ~所有者との違い,削除した時の挙動~

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 は全てのフォルダ/ファイルの所有者の変更が可能なため、アクセス不可のフォルダの所有者を自分に変更することでアクセス権を取り戻すことができます。詳細は以下を参照。)

【解決】Windowsで管理者(administrator)なのに権限が無い,フォルダ/ファイルのアクセス許可を変更できないしアクセスもできない
症状 Windows の フォルダ (NTFS) アクセス権に管理者 (adm...

一般ユーザがアクセス権を変更させないようにしたいなら

もしファイルサーバで、一般ユーザがアクセス権を変更させないようにしたい、というのであれば対処は簡単です。

NTFS ではなく共有 (SMB/CIFS) のアクセス権で「フルコントロール」から「変更」に落とせばよいのです。

具体的には以下の通りです。

C:\share を右クリックし「プロパティ」を開き、「共有」タブの「詳細な共有」をクリック

「アクセス許可」をクリック

Everyone 等のユーザから「フルコントロール」のチェックを外し「OK」をクリック

これを行うことで、その配下のフォルダを「継承の無効化」などアクセス権を変更しようとすると、以下のエラーが表示されるようになります。

セキュリティ情報を適用中にエラーが発生しました:
コンテナー内のオブジェクトを列挙できませんでした。アクセスが拒否されています。

 

コメント

タイトルとURLをコピーしました