認証を有効にし、構成する

ここでは、認証を有効にし、匿名認証、基本認証、ダイジェスト認証、高度ダイジェスト認証、および統合 Windows 認証の設定を構成する具体的な手順について説明します。これらの認証方法を初めて使用する場合は、先に「認証について」を参照してから、サーバーで認証を有効にし、構成することをお勧めします。

認証を有効にする

Web サイトや FTP サイト、仮想ディレクトリ、またはファイルに対し、必要に応じて認証設定を有効にすることができます。匿名認証と統合 Windows 認証は、既定で有効になっています。

WWW 認証方法を有効にするには

  1. 認証方法に適切な Windows ユーザー アカウントを作成します。必要に応じて、そのアカウントを Windows ユーザー グループに追加します。Windows ユーザー アカウントの作成方法の詳細については、「NTFS でファイルを保護する」を参照してください。
  2. アクセスを制御するディレクトリまたはファイルに対して、NTFS のアクセス権を構成します。詳細については、「ディレクトリおよびファイルに対する NTFS のアクセス権を設定する」を参照してください。
  3. IIS スナップインで、サイト、ディレクトリ、またはファイルを選択し、そのプロパティ シートを開きます。
  4. [ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートをクリックします。[匿名アクセスおよび認証コントロール] の [編集] をクリックします。
  5. [認証方法] ダイアログ ボックスで、設定を選択します。

FTP 認証方法を有効にするには

ダイジェスト認証および統合 Windows 認証を FTP サイトで使用することはできません。FTP サイトの場合、認証はサイト レベルで設定する必要があります。

  1. WWW 認証方法を有効にするには」の手順 1. 〜 3. を実行してください。
  2. [セキュリティ アカウント] プロパティ シートをクリックし、[匿名接続を許可する] チェック ボックスをオンにします。
  3. [ユーザー名] ボックスと [パスワード] ボックスに、匿名ログオンで使用するユーザー名とパスワードを入力します。ユーザー名は、匿名ユーザー アカウントの名前で、通常は IUSR_computername と指定します。パスワードを変更するには、[IIS によるパスワードの管理を許可する] チェック ボックスをオフにします。
  4. Windows ユーザー アカウントと同じパスワードを使用する場合は、[IIS によるパスワードの管理を許可する] チェック ボックスをオンにします。

       パスワードの同期化ができるのは、匿名ユーザー アカウントがローカル コンピュータで定義され、ネットワーク上のほかのコンピュータでは匿名アカウントとして機能しない場合に限られます。

  5. すべてのユーザーを匿名ユーザーとしてログオンさせる場合は、[匿名接続のみを許可する] チェック ボックスをオンにします。
  6. [OK] をクリックします。
  7. 匿名アカウントに対して、NTFS の適切なアクセス権を設定します。詳細については、「ディレクトリおよびファイルに対する NTFS のアクセス権を設定する」を参照してください。

重要   Web サイトまたは仮想ディレクトリのセキュリティ設定を変更した場合、そのサイトまたはディレクトリの子レベルに関するセキュリティ設定をリセットするかどうかを確認するメッセージが表示されます。リセットを選択した場合、子レベルのセキュリティ設定は親のサイトまたはディレクトリから継承されます。プロパティ設定の詳細については、「Web サイトおよび FTP サイトについて」の「プロパティおよびサイトのプロパティの継承」を参照してください。

匿名認証を構成する

既定の設定では、IUSR_computername アカウントは、Windows ユーザー グループの Guests アカウントに含まれています。複数の匿名アカウントを作成して、各 Web サイトや FTP サイト、ディレクトリ、またはファイルに割り当てることができます。アカウントに異なるアクセス権を与えたり、アカウントを異なる Windows ユーザー グループに割り当てたりすることで、公開された Web または FTP コンテンツの異なる領域への匿名アクセスをユーザーに許可することができます。

匿名アカウントには、ローカル ログオンするユーザー権利が必要です。アカウントにローカル ログオンの権利がない場合、IIS は匿名要求に応えることができません。ドメイン コントローラでは、IUSR_computername アカウントは、既定でこの権利を割り当てられていません。匿名要求を許可するには、アカウントをローカル ログオンに変更する必要があります。

IUSR_computername アカウントのセキュリティ権限は、Windows で変更することもできます。ただし、匿名ユーザー アカウントに特定のリソースへのアクセス権限がない場合、そのリソースへの匿名接続の確立は Web サーバーによって拒否されます。詳細については、「Web サーバーのアクセス権を設定する」を参照してください。

匿名認証を有効にするには

  1. IIS スナップインで、サイト、ディレクトリ、またはファイルを選択し、そのプロパティ シートを開きます。
  2. [ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートをクリックします。セキュリティ設定を変更するレベルに応じて、[ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートが表示されます。
  3. [匿名アクセスおよび認証コントロール] の [編集] をクリックします。[認証方法] ダイアログ ボックスが表示されます。
  4. [匿名アクセス] チェック ボックスをオンにします。

匿名認証に使用するアカウントを変更するには

  1. IIS スナップインで、サイト、ディレクトリ、またはファイルを選択し、そのプロパティ シートを開きます。
  2. [ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートをクリックします。セキュリティ設定を変更するレベルに応じて、[ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートが表示されます。
  3. [匿名アクセスおよび認証コントロール] の [編集] をクリックします。[認証方法] ダイアログ ボックスが表示されます。
  4. [匿名アクセス] チェック ボックスをオンにして、[編集] をクリックします。[匿名ユーザー アカウント] ダイアログ ボックスが表示されます。
  5. 匿名アクセスに使用する有効な Windows ユーザー アカウントを入力するか、[参照] をクリックしてアカウントを選択します。
  6. アカウントのパスワードを入力するには、[IIS によるパスワードの管理を許可する] チェック ボックスをオフにします。

重要   IUSR_computername アカウントを変更すると、Web サーバーのすべての匿名要求の処理に影響します。このアカウントを変更する際には、細心の注意が必要です。

基本認証を構成する

基本認証を有効にしても、Web サーバーがユーザーを認証するように自動的には構成されません。Windows ユーザー アカウントは、以前説明したとおりに作成し、NTFS アクセス権を適切に設定する必要があります。

基本認証を使用してユーザーを適切に認証するには、Windows ユーザー アカウントに、ローカル ログオンのユーザー権限が必要です。基本認証では、ローカル ユーザー、つまりサーバーに物理的にログオンしているユーザーとして見せかけるために、この権限が必要になります。既定では、Windows プライマリ ドメイン コントローラ (PDC) 上ではユーザー アカウントはローカル ログオンユーザー権限を与えられていません。Active Directory Service Interface (ADSI) を使用して、ユーザーにローカル ログオン権限を与えることができます。詳細については、『Active Server Pages ガイド』の「LogonMethod」を参照してください。

重要   基本認証方式では、ユーザー名とパスワードは暗号化されていない状態でネットワークに転送されます。Web サーバーの暗号化機能を基本認証と組み合わせて使うことで、ネットワークに転送されるユーザー アカウント情報を保護することができます。詳細については、「暗号化について」を参照してください。

基本認証を有効にするには

  1. IIS スナップインで、サイト、ディレクトリ、またはファイルを選択し、そのプロパティ シートを開きます。
  2. [ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートをクリックします。セキュリティ設定を変更するレベルに応じて、[ディレクトリ セキュリティ] プロパティ シートまたは [ファイル セキュリティ] プロパティ シートが表示されます。
  3. [認証済みアクセス] セクションで、[基本認証] チェック ボックスをオンにします。

既定のログオン ドメインを選択する必要があります。詳細については、「既定のログオン ドメインを設定する」を参照してください。

ダイジェスト認証を構成する

ダイジェスト認証の最低要件については、「ダイジェスト認証の要件」を参照してください。IIS サーバー上でダイジェスト認証を有効にするには、次の 2 つを実行する必要があります。

Windows ドメイン サーバーでダイジェスト認証を有効にするには

  1. IIS スナップインを開きます。
  2. Web サイト、仮想ディレクトリ、またはフォルダを選択します。
  3. [操作] メニューの [プロパティ] をクリックします。
  4. [ディレクトリ セキュリティ] プロパティ シートをクリックします。
  5. [匿名アクセスおよび認証コントロール] の [編集] をクリックします。
  6. [Windows ドメイン サーバーでダイジェスト認証を使用する] チェック ボックスをオンにします。

領域名を構成する

表 1 で示すように、メタベースのあらゆるレベルから領域名を構成できます。子ノードを明示的に構成していない場合、構成済みの最も近い上位レベルから構成が継承されます。

表 1
メタベース レベル 説明
W3SVC W3SVC レベル (または IISWebService レベル) は、高度ダイジェスト認証が構成できる場合のメタベース内の最上位レベルです。このレベルで設定される構成は、特定の構成設定を持たない下位レベルによって継承されます。
W3SVC/n W3SVC/n レベル (または IISWebServer レベル) は、特定の Web サイトです。n は、サイトの番号を示します。サイトの番号は 1 から始まります。既定の Web サイトは 1 です。
W3SVC/n/root W3SVC/n/Root レベル (または IISWebVirtualDir レベル) は、Web サイトの開始位置です。n は、サイトの番号を示します。
W3SVC/n/root/vdir W3SVC/n/ROOT/WebVirtualDir レベル (または IISWebVirtualDir レベル) は、Web サイト内の仮想ディレクトリです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/webdir W3SVC/n/Root/WebVirtualDir/WebDir レベル (または IISWebDirectory レベル) は、Web サイト内の仮想ディレクトリ内の物理ディレクトリです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/file W3SVC/n/ROOT/WebVirtualDir レベル内の個々のファイルです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/webdir/file W3SVC/n/Root/WebVirtualDir/WebDir レベル内の個々のファイルです。n は、サイトの番号を示します。

IIS サーバー上では、1 つまたは複数の領域名を構成することができます。複数の領域名を使用する場合は、メタベースの別レベルで構成する必要があります。複数の領域名を構成することにより、たとえば、仮想ディレクトリ sales には ドメイン 1 のメンバにアクセスを許可し、仮想ディレクトリ engineering にはドメイン 2 のメンバにアクセスを許可することができます。これが特に有効となるのは、ドメイン 1 とドメイン 2 の間に信頼関係がない場合です。ドメインの詳細については、Windows XP のオンライン マニュアルを参照してください。

メタベース内の子ノードに領域名が構成されていない場合、子ノードでは領域名が構成されている最も近い上位レベルから領域名を継承します。領域名が構成されていない場合、IIS ではそのコンピュータ名が領域名として送信されます。IIS がそのコンピュータ名を領域名として送信し、しかも Active Directory が有効な Windows XP ドメイン コントローラ上で IIS が 実行されていない場合は、ダイジェスト認証が失敗します。IIS をドメイン コントローラ上で実行することも可能ですが、セキュリティ上の危険とパフォーマンスの問題から、お勧めできません。

領域名を構成するには

  1. コマンド プロンプトを開きます。
  2. cscript.exe x:\inetpub\adminscripts\adsutil.vbs set level/realm realm_name」と入力します。

  3. Enter キーを押します。

既定の Web サイト (既定の Web サイトは 1) を、領域名 redmond で構成するとします。IIS は c: ドライブにインストールされています。
  1. コマンド プロンプトで、「cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/1/realm redmond」と入力します。
  2. Enter キーを押します。

コマンド プロンプトでは、次のように表示されます。
   realm         : <string>    "redmond"

高度ダイジェスト認証を構成する

高度ダイジェスト認証の最低要件については、「高度ダイジェスト認証の要件」を参照してください。IIS サーバー上で高度ダイジェスト認証を有効にするには、次の 3 つを実行する必要があります。

重要   最初の 2 つの手順を実行しても UseDigestSSP メタベース キーが構成されなかった場合、高度ダイジェスト認証ではなく、ダイジェスト認証が使用されます。

Windows ドメイン サーバーで高度ダイジェスト認証を有効にするには

  1. IIS スナップインを開きます。
  2. Web サイト、仮想ディレクトリ、またはフォルダを選択します。
  3. [操作] メニューの [プロパティ] をクリックします。
  4. [ディレクトリ セキュリティ] プロパティ シートをクリックします。
  5. [匿名アクセスおよび認証コントロール] の [編集] をクリックします。
  6. [Windows ドメイン サーバーでダイジェスト認証を使用する] チェック ボックスをオンにします。

領域名を構成する

表 2 で示すように、メタベースのあらゆるレベルから領域名を構成できます。子ノードを明示的に構成していない場合、構成済みの最も近い上位レベルから構成が継承されます。

表 2
メタベース レベル 説明
W3SVC W3SVC レベル (または IISWebService レベル) は、高度ダイジェスト認証が構成できる場合のメタベース内の最上位レベルです。このレベルで設定される構成は、特定の構成設定を持たない下位レベルによって継承されます。
W3SVC/n W3SVC/n レベル (または IISWebServer レベル) は、特定の Web サイトです。n は、サイトの番号を示します。サイトの番号は 1 から始まります。既定の Web サイトは 1 です。
W3SVC/n/root W3SVC/n/Root レベル (または IISWebVirtualDir レベル) は、Web サイトの開始位置です。n は、サイトの番号を示します。
W3SVC/n/root/vdir W3SVC/n/ROOT/WebVirtualDir レベル (または IISWebVirtualDir レベル) は、Web サイト内の仮想ディレクトリです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/webdir W3SVC/n/Root/WebVirtualDir/WebDir レベル (または IISWebDirectory レベル) は、Web サイト内の仮想ディレクトリ内の物理ディレクトリです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/file W3SVC/n/ROOT/WebVirtualDir レベル内の個々のファイルです。n は、サイトの番号を示します。
W3SVC/n/root/vdir/webdir/file W3SVC/n/Root/WebVirtualDir/WebDir レベル内の個々のファイルです。n は、サイトの番号を示します。

IIS サーバー上では、1 つまたは複数の領域名を構成することができます。複数の領域名を使用する場合は、メタベースの別レベルで構成する必要があります。複数の領域名を構成することにより、たとえば、仮想ディレクトリ sales には ドメイン 1 のメンバにアクセスを許可し、仮想ディレクトリ engineering にはドメイン 2 のメンバにアクセスを許可することができます。これが特に有効となるのは、ドメイン 1 とドメイン 2 の間に信頼関係がない場合です。ドメインの詳細については、Windows XP のオンライン マニュアルを参照してください。

メタベース内の子ノードに領域名が構成されていない場合、子ノードでは領域名が構成されている最も近い上位レベルから領域名を継承します。領域名が構成されていない場合、IIS ではそのコンピュータ名が領域名として送信されます。IIS がそのコンピュータ名を領域名として送信し、しかも Active Directory が有効な Windows XP ドメイン コントローラ上で IIS が 実行されていない場合は、高度ダイジェスト認証が失敗します。IIS をドメイン コントローラ上で実行することも可能ですが、セキュリティ上の危険とパフォーマンスの問題から、お勧めできません。

領域名を構成するには

  1. コマンド プロンプトを開きます。
  2. cscript.exe x:\inetpub\adminscripts\adsutil.vbs set level/realm realm_name」と入力します。

  3. Enter キーを押します。

既定の Web サイト (既定の Web サイトは 1) を、領域名 redmond で構成するとします。IIS は c: ドライブにインストールされています。
  1. コマンド プロンプトで、「cscript.exe c:\inetpub\adminscripts\adsutil.vbs set w3svc/1/realm redmond」と入力します。
  2. Enter キーを押します。
  3. コマンド プロンプトでは、次のように表示されます。
       realm         : <string>    "redmond"

UseDigestSSP メタベース プロパティを設定する

高度ダイジェスト認証では、UseDigestSSP というメタベース キーが使用されます。このメタベース キーにより、ダイジェスト認証と高度ダイジェスト認証の Security Support Provider Interface (SSPI) コードを切り替えます。キーが設定されると、有効なプロパティ値は、1 (TRUE)、0 (FALSE)、または empty のいずれかになります。プロパティが TRUE に設定されると、高度ダイジェスト認証用の新しい SSPI コードが使用されます。それ以外の場合 (FALSE、empty、または未設定)、ダイジェスト認証の SSPI コードが使用されます。

表 2 で示すように、メタベースのあらゆるレベルで UseDigestSSP メタベース プロパティを構成できます。子ノードを明示的に構成していない場合、構成済みの最も近い上位レベルから構成が継承されます。

UseDigestSSP メタベース プロパティを構成するには

  1. コマンド プロンプトを開きます。
  2. cscript /nologo %SystemDrive%\inetpub\adminscripts\adsutil.vbs SET level/UseDigestSSP True」と入力します。
  3. Enter キーを押します。

UseDigestSSP メタベース キーの詳細については、アルファベット順のプロパティ リストで「UseDigestSSP」を参照してください。

この例により、UseDigestSSP メタベース キーが w3svc/1 レベルで構成されているかどうかを確認できます。

  1. コマンド プロンプトを開きます。
  2. cscript /nologo %SystemDrive%\inetpub\adminscripts\adsutil.vbs GET w3svc/1/UseDigestSSP」と入力します。
  3. Enter キーを押します。

統合 Windows 認証を構成する

統合 Windows 認証は、Microsoft Internet Explorer Version 2.0 以降でのみサポートされています。統合 Windows 認証は、プロキシ サーバーやほかのファイアウォール アプリケーションを通しては、機能しません。ユーザーの資格情報に問題があるなどの理由で、統合 Windows 認証が失敗すると、ブラウザはユーザーに対してユーザー名とパスワードの入力を要求します。


© 1997-2001 Microsoft Corporation.All rights reserved.