Web サーバーを安全に稼働させるためには、Web および FTP のコンテンツに対するユーザー アクセスを適切に制御することが重要です。Windows や IIS のセキュリティ機能を使用することで、Web および FTP のコンテンツに対するユーザー アクセスを効果的に制御できます。Web サイトおよび FTP サイト全体から個々のファイルまで、さまざまなレベルでアクセスを制御することが可能です。
匿名アクセスは、ほとんどの Web サイトで使用されているアクセス制御方法です。匿名アクセスを使うと、どのユーザーも Web サイトの公開された領域にアクセスできますが、Web サーバーの重要な管理機能やプライベートな情報には、権限のないユーザーはアクセスすることはできません。
Web サーバーを美術館にたとえると、匿名アクセスを許可するということは、一般公開されているギャラリーや展示品を来場者が自由に鑑賞してもよいことを意味します。一方、事務室や学芸員室など、部外者に入られては困る特定の部屋には鍵が掛かっているはずです。同じように、Web サーバーの匿名アクセスを構成する場合、NTFS のアクセス権を適用することで、一般ユーザーがプライベートなファイルやディレクトリにアクセスすることを防ぐことができます。NTFS のアクセス権については、後の「NTFS のアクセス権」を参照してください。
既定の設定では、すべてのユーザーは匿名アカウントを使って Web サーバーにログオンします。インストールの際に、サーバーには、IUSR_computername という名前の特別な匿名ユーザー アカウントが作成されます。たとえば、コンピュータ名が SalesDept1 の場合、匿名アカウント名は IUSR_SalesDept1 になります。サーバーに複数の Web サイトがある場合、すべてのサイトで同じ匿名ユーザー ログオン アカウントを使用することも、サイトごとに異なるアカウントを使用することも可能です。Windows のローカル ユーザーとグループ ユーティリティを使用して、新しい “匿名ログオン” ユーザー アカウントを作成することもできます。詳細については、「認証について」を参照してください。
WebDAV (Web Distributed Authoring and Versioning) は、ファイル システムなどの格納媒体を HTTP 接続で使用可能にする、HTTP 1.1 規格の拡張機能です。WebDAV は IIS に実装されているため、作成元はリモートで、サーバー上のファイルおよびディレクトリとそのプロパティを移動、検索、または削除することができます。WebDAV は、Web サーバーのアクセス権の設定を使用して構成されます。詳細については、「WebDAV の発行」を参照してください。
WebDAV のアクセス権は、次の操作に対して設定できます。
WebDAV は、ファイル アロケーション テーブル (FAT) および NTFS の両方で機能します。WebDAV 仕様ドラフトの詳細については、World Wide Web Consortium の Web サイトの「WWW Distributed Authoring and Versioning」を参照してください。NTFS の詳細については、「NTFS でファイルを保護する」を参照してください。
注 WebDAV は、HTTP 1.1 用に設計されたものです。 したがって、FTP サイトなどの非 HTTP サービスでは利用できません。
Windows ファイル システムおよび Web サーバーのセキュリティ機能を適切に構成することで、Web サーバーのコンテンツに対するユーザー アクセスを制御することができます。ユーザーが Web サーバーにアクセスしようとすると、サーバーはいくつかのアクセス制御処理を行ってユーザーを識別し、許可するアクセス レベルを決定します。
アクセス制御処理の概要を次に示します。
特定のサイト、ディレクトリ、およびファイルに対して、Web サーバーの "アクセス権" を構成できます。このアクセス権は、ユーザー固有のアクセス権利に関係なく、すべてのユーザーに適用されます。たとえば、特定の Web サイトのコンテンツを更新している間は、その Web サイトの読み取りアクセス権を無効にして、ユーザーがアクセスできないようにすることができます。 ユーザーがその Web サイトにアクセスしようとすると、サーバーから "Access Forbidden" というエラー メッセージが返されます。一方、読み取りアクセス権を有効にすると、サイトを表示できるユーザーを NTFS のアクセス権で制限していない限り、すべてのユーザーに Web サイトの表示を許可することになります。詳細については、「Web サーバーのアクセス権を設定する」を参照してください。
Web サーバーのアクセス権のレベルは、次のとおりです。
注 Web サーバーのアクセス権の設定では、サイト、仮想ディレクトリ、またはファイルで使用できる HTTP の動詞を設定します。
インターネット インフォメーション サービスは、NTFS のアクセス権を使って、権限のないアクセスから個々のファイルおよびディレクトリを保護します。すべてのユーザーに一律に適用される Web サーバーのアクセス権とは異なり、NTFS のアクセス権では、コンテンツにアクセスできるユーザーと、そのユーザーがコンテンツに対して実行できる操作を、厳密に定義できます。
NTFS のアクセス権のレベルは、次のとおりです。
重要 IUSR_computername アカウントに対して、リソースへのアクセス権を [アクセス権なし] に設定すると、匿名ユーザーはリソースへのアクセスを拒否されます。
随意アクセス制御リスト (DACL) とも呼ばれるアクセス権の一覧は、個々のファイルまたはディレクトリに対して定義します。DACL を定義する場合は、Windows の特定のユーザー アカウントまたはユーザー グループを選択し、そのユーザーまたはグループに対するアクセス許可を指定します。
次の表は、架空の Microsoft Word ドキュメント MYSERVER:\Administration\Accounts.doc に対するアクセス制御リストの内容です。
ユーザー アカウントまたはユーザー グループ | アクセス権 |
---|---|
MYSERVER\Administrators | フル コントロール |
MYSERVER\JeffSmith | 変更 |
MYSERVER\Guests | アクセス権なし |
Administrator グループのメンバを除けば、"JeffSmith" という名前のアカウントだけが、Accounts.doc を変更する権限を持っています。Windows の Guest ユーザー グループのメンバとしてログオンする一般のユーザーは、Accounts.doc へのアクセスを明示的に拒否されます。
NTFS のアクセス権を設定した場合、制限されたファイルへのアクセスを許可する前に、Web サーバーでユーザーを識別、つまり "認証" する方法が必要になります。有効な Windows アカウントのユーザー名とパスワードの提示をログオンするユーザーに要求するように、サーバーの認証機能を構成できます。詳細については、「認証について」を参照してください。
重要 NTFS の DACL の設定が正しくない場合、ブラウザがユーザーに対してユーザー情報の入力を求める場合があります。たとえば、DACL の設定によってファイルへのアクセスが許可されていないユーザーに対して、IIS はアクセス拒否のエラー メッセージを発行します。 この結果、ブラウザはユーザーに対して別のユーザー名とパスワードを入力するように要求します。
注 サーバーの安全を確保するには、不要なユーザーやグループ、または用途に関係のないグループを削除する必要があります。ただし、詳細の変更をせずに Web リソースの DACL から Everyone グループを削除すると、非匿名アクセスも使用できなくなる可能性があります。非匿名アクセスを正常に実行するには、次の権限を特定のユーザーまたはユーザー グループに追加する必要があります。
手順については、「NTFS でファイルを保護する」と「ディレクトリおよびファイルに対する NTFS のアクセス権を設定する」を参照してください。
次のガイドラインを使用して、Web サーバーのセキュリティに対する脅威を減らすことができます。適切なアクセス制御のポリシーを実装し、Web サーバーと Windows のセキュリティ機能を正しく設定した場合、確実なセキュリティ構成を実現できます。
注 金融機関のようにセキュリティを特に必要とする業界向けのアプリケーションを開発する場合は、適切なセキュリティの方針と手順の設定について、セキュリティ専門のコンサルティング会社によるサポートを受けることをお勧めします。コンサルティング会社を利用すると、適切なセキュリティ ポリシーとプロシージャを確立できます。
Web サーバーのコンテンツを適切に保護するには、セキュリティ ポリシーに次のガイドラインが必要です。
権限を持たないユーザーでも、ユーザー アカウントのパスワードを盗んだり推測したりすることで、Web サーバーにアクセスできる可能性があります。すべてのパスワード、中でも特に管理者権限を保護するためのパスワードは、容易に察知することのできないものにする必要があります。"強固な" パスワードを選択するには、次のガイドラインを使用します。
Web サーバーの "Administrators" グループへのアクセスは制限する必要があります。Administrators グループのメンバは、Web サーバー全体とそのセキュリティ機能を自由に制御できます。次の手順で、Administrators グループのメンバシップを管理します。
Windows のグループ ポリシーを使用して、Windows のユーザー グループに "ユーザー権限のポリシー" を指定します。ユーザー権限のポリシーによって、ユーザーが実行できる Web サーバーおよび Windows の管理操作が決まります。たとえば、一般ユーザーが Web サーバーをリモートからシャット ダウンする権限を持たないように、権限のポリシーを設定できます。原則として、ユーザー権利のポリシーは十分厳しく設定する必要があります。Web サーバーおよびそのリソースを変更できる権利を、誤ってユーザーに与えることがないようにします。詳細については、Windows のマニュアルを参照してください。