共有および NTFS のアクセス許可

公開日: 2007 年 12 月 1 日 (作業者: walterov (英語))

更新日: 2008 年 3 月 5 日 (作業者: walterov (英語))

はじめに

ファイル サーバーのアクセス許可は、コンテンツへの適切なアクセスを提供できるよう慎重に実装する必要があります。これには、共有および物理フォルダーのアクセス許可のロックダウンを行います。

アクセス許可

次の表は、ホスティング ガイドの「Web ホスティング アーキテクチャの設計」セクションで説明されている「共有ホスティングのセットアップ」で、ファイル サーバーの共有およびフォルダーで使用されたアクセス許可の一覧です。サーバー管理者は、使用する共有ホスティング環境に基づいて、ニーズに合った専用のカスタム アクセス許可を定める必要があります。

パス

アクセス許可

理由

\\server\share$
(共有)

Domain Administrators - フル コントロール

Domain Users - 変更

MachineAccounts$ - フル コントロール

共有のアクセス許可では、管理者およびサイト アカウントに対して、コンテンツへのアクセスが許可されていることが必要です。物理パスは、実際に必要なアクセス許可に制限されます。

E:\Content
(共有の物理パス)

Administrators - フル コントロール

System - フル コントロール

これは共有されるフォルダーです。ビルトインの Administrators グループおよび System アカウントを除くどのアカウントにも、アクセス許可は必要ありません。

E:\Content\<サイト名>

(特定のサイトまたはユーザーのコンテナー)

Administrators - フル コントロール

System - フル コントロール

Site Owner - フォルダーの内容の一覧表示

このフォルダーは、サイトのホーム ディレクトリやそのログ ファイルなどのフォルダーのコンテナーとして使用されます。Site Owner には、このフォルダーへの読み取りアクセスが必要ですが、書き込みアクセスは不要です。

E:\Content\<サイト名> \wwwroot

(サイトの IIS ホーム ディレクトリ)

Administrators - フル コントロール

System - フル コントロール

Site Owner - 変更

App Pool Username - 読み取り

これは、ユーザー アカウントに属する Web サイトのルートです。Web サイトのアプリケーション プール ID および匿名ユーザー名の両方に、App Pool Username が使用されています。

E:\Content\<サイト名>\Logs

(ログのコンテナー)

Administrators - フル コントロール

System - フル コントロール

Site Owner - 読み取り

 

ログ専用のこのフォルダーは、サイトを参照するユーザーがアクセスできないように、サイトのルートよりも "上位" に格納される点に注意してください。セキュリティ上の理由により、Web ブラウザーからアクセスできる場所にこのフォルダーを配置しないようお勧めします。

E:\Content\<サイト名>\Logs\FailedReqLogs

(失敗した要求トレース ログのコンテナー)

Administrators - フル コントロール

System - フル コントロール

App Pool Username - フル コントロール

このフォルダーは、失敗した要求のログ ファイルを格納するために使用されます。サイトの所有者は、これらのログ ファイルを使用して、Web サイトの問題を診断できます。これらのログは、ワーカー プロセス ID の App Pool Username によって書き込まれます。

E:\Content\<サイト名>\Logs\W3SVCLogFiles

(W3SVC トラフィック ログのコンテナー)

Administrators - フル コントロール

System - フル コントロール

MachineAccount$ - フル コントロール

このフォルダーは、Web サイトのログ ファイルを格納するために使用されます。サイトの所有者は、これらのログ ファイルを使用して、トラフィック パターンを調べることができます。サーバー管理者がこれらのファイルを共有したくない場合や、トラフィックを調べる別の方法を提供する場合は、これらのファイルを別の場所に格納できます。

MachineAccount$ は、Web サーバーのマシン アカウントです。これらのログは、HTTP.SYS によって書き込まれます。

アクセス許可の構成

共有のアクセス許可を構成するには

1.       Windows エクスプローラーで、共有するフォルダーを右クリックし、[プロパティ] をクリックします。

2.       [共有] タブをクリックし、[詳細な共有] をクリックします。

3.       ユーザー アカウント制御で、この操作を実行するにはユーザーのアクセス許可が必要であることを通知するプロンプトが表示されます。[続行] をクリックして同意します。

4.       [詳細な共有] ダイアログ ボックスで、[このフォルダーを共有する] チェック ボックスをオンにします。

5.       必要に応じて、[共有名][コメント] を設定します。共有を非表示にするには、共有名の末尾に $ を追加します。

: 共有を非表示にした場合、\\server に接続しても、パス \\server\share$ を明示的に入力しない限りこの共有を表示することはできません。

6.       [アクセス許可] をクリックします。

7.       [アクセス許可] ダイアログ ボックスで、Everyone グループが存在する場合は、そのグループを削除します。

8.       この共有へのアクセスを許可する適切なユーザーまたはグループを追加します。

9.       ユーザーまたはグループのアクセス許可 (フル コントロール、変更、読み取り) を指定します。

10.   [OK] を 2 回クリックし、[閉じる] をクリックしてダイアログ ボックスを閉じます。

 

フォルダー構造のアクセス許可を構成するには

1.       Windows エクスプローラーで、共有するフォルダーを右クリックし、[プロパティ] をクリックします。

2.       [セキュリティ] タブをクリックし、[編集] をクリックします。

3.       [アクセス許可] ダイアログ ボックスで、フォルダー構造の各レベルへのアクセスを許可する適切なユーザーまたはグループを追加します。

4.       ユーザーまたはグループのアクセス許可 (フル コントロール、変更、読み取りと実行、フォルダーの内容の一覧表示、読み取り、書き込みの特別なアクセス許可) を指定します。

5.       [OK] を 2 回クリックして、ダイアログ ボックスを閉じます。

共有を作成して、アクセス許可を設定する例については、既定のドキュメントを構成するサンプル スクリプトを説明した「C# および PowerShell のスクリプト サンプル」を参照してください。