認証方法を計画する (Office SharePoint Server)

この記事の内容 :

  • 認証について

  • サポートされている認証方法

  • 認証を構成する

  • クロール コンテンツの認証を計画する

  • 認証デザイン用ゾーンの計画

  • 環境で使用できる認証方法を選択する

  • ワークシート

この記事では、Microsoft Office SharePoint Server 2007 でサポートされている認証方法について説明します。具体的には、以下の内容で構成されます。

  • Office SharePoint Server 2007 において、どのように認証が実装されているかを理解する。

  • 環境に適した認証方法を選ぶ。

認証について

認証とは、ユーザー ID を検証するプロセスです。ユーザー ID 検証後、どのサイトやコンテンツや機能にユーザーがアクセスできるかを承認プロセスが決定します。

Office SharePoint Server 2007 の認証プロセスは、インターネット インフォメーション サービス (IIS) によって管理されます。IIS がユーザーの認証を行った後、Office SharePoint Server 2007 のセキュリティ機能が承認プロセスを行います。

Office SharePoint Server 2007 承認の実装の詳細については、「サイトおよびコンテンツのセキュリティを計画する (Office SharePoint Server)」を参照してください。

ユーザー ID の検証によってソリューションを保護するためだけではなく、ネットワーク上のユーザー資格情報のセキュリティを確保するためにも、認証のための計画を行うことが重要です。

サポートされている認証方法

Office SharePoint Server 2007 は、Microsoft Windows オペレーティング システムに対応しているかいないかに関係なく ID 管理システムの認証をサポートする、柔軟性と拡張性の高い認証システムです。プラグ可能な ASP .NET 認証と統合することにより、Office SharePoint Server 2007 は、フォーム ベースのさまざまな認証スキーマをサポートします。Office SharePoint Server 2007 の認証サポートは、以下のようなさまざまな認証シナリオを可能にします。

  • 標準の Windows 認証方法を使用する。

  • ユーザー名とパスワードで構成されたシンプルなデータベースを使用する。

  • 組織の ID 管理システムに直接接続する。

  • 複数の認証方法を使用してパートナー アプリケーションの認証を行う (たとえば、Windows 認証方法で社内従業員の認証を行いつつ、パートナー企業の ID 管理システムに接続する)。

  • 複合 ID 管理システムに参加する。

サポートされている認証方法を下表に示します。

認証方法 説明

Windows

標準の IIS Windows 認証方法がサポートされます。

  • 匿名

  • 基本

  • ダイジェスト

  • 証明書

  • Kerberos (統合 Windows)

  • NTLM (統合 Windows)

ASP.NET フォーム

ASP.NET フォーム認証システムと統合することにより、Windows ベースではない ID 管理システムのサポートが Office SharePoint Server 2007 で実現されます。ASP.NET 認証により、MembershipProvider インターフェイスを実装する ID 管理システムで Office SharePoint Server 2007 を使用することが可能となります。セキュリティ管理ページを作成しなおしたり、シャドウ Active Directory ディレクトリ サービス アカウントを管理したりする必要はありません。

  • ライトウェイト ディレクトリ アクセス プロトコル (LDAP)

  • SQL データベースなどのデータベース

  • その他の ASP.NET ベースのフォーム認証ソリューション

Web シングル サインオン (SSO)

Office SharePoint Server 2007 は、Web SSO ベンダによる複合認証をサポートします。Web SSO は、複数の異なるプラットフォーム上で実行されるサービスが包含された環境での SSO を可能とします。個々の Active Directory アカウントを管理する必要はありません。

  • Active Directory Federation Services (AD FS)

  • その他の ID 管理システム

システム アカウントの認証

ASP.NET フォーム認証と Web SSO を使用して認証できるのは、ユーザー アカウントだけです。Microsoft SQL Server データベース ソフトウェアとの接続および Web ファームの実行に使用するプロセス アカウントは、ユーザー認証に他の認証方法を使用する場合にも、Windows アカウントでなければなりません。

Office SharePoint Server 2007 は、Active Directory を実行していないファームの SQL Server 認証とローカル コンピュータ プロセス アカウントをサポートします。たとえば、同一のユーザー名とパスワードを、1 つのファーム内のすべてのサーバーに使用することによってローカル アカウントを実装することができます。

認証を構成する

Windows 認証の構成は単純なプロセスですが、ASP.NET フォームや Web SSO を使用する認証の構成には若干の計画が必要です。ここでは、Office SharePoint Server 2007 での認証構成方法を概説します。ソリューションに合った認証戦略をどのように開発し、組織内のだれが認証計画に従事するべきかを決定する上で、以下の情報が役立ちます。

SharePoint Web アプリケーションの認証を構成する

Office SharePoint Server 2007 における認証は、SharePoint Web アプリケーションのレベルで構成します。下図は、複数の企業のサイトをホストするよう構成された、Windows SharePoint Services サーバーを示しています。企業ごとに別々に認証を構成します。

2 つの異なる企業のためのホスティング認証

Web アプリケーションを初めて作成するときや拡張するときには、限られた種類の認証オプションが提示されます (Kerberos、NTLM、および匿名)。これらの方法のいずれかを使用する場合には、Web アプリケーションの作成時や拡張時に認証を構成できます。

下図は、Web アプリケーションを初めて作成したり拡張したりするときに利用できる限られた認証オプションを示しています。

既定の認証設定

別の認証設定を使用する場合には、既定の認証オプションを選択し Web アプリケーションの作成や拡張を行ってから、認証の構成を行います (それには、[サーバーの全体管理] の [アプリケーション構成の管理] ページの [アプリケーション セキュリティ] セクションの [認証プロバイダ] を選択し、ゾーンをクリックして [認証の編集] ページを開きます)。このページで構成する設定は、Windows、フォーム、Web SSO のどの認証タイプが選択されているかによって異なります。

下図は、[認証の編集] ページを示しています。

[認証の編集] ページ

[サーバーの全体管理] ページで選択した認証オプションによっては、追加構成が必要となる可能性があります。下表は、認証方法別の構成手順を示しています。また、この表では、SharePoint 管理者の他に特別な役割が必要かどうかも示しています。

認証方法 追加構成 専門ロール

匿名、

なし

なし

基本

なし

なし

ダイジェスト

ダイジェスト認証を IIS で直接構成します。

なし

証明書

  1. [サーバーの全体管理] で Windows 認証を選択します。

  2. 証明書認証のための IIS を構成します。

  3. SSL を有効にします。

  4. 証明機関 (CA) から証明書を取得して構成します。

証明書の取得と構成を行う Windows Server 2003 管理者

NTLM (統合 Windows)

なし

なし

Kerberos (統合 Windows)

  1. Kerberos 認証を使用するように Web アプリケーションを構成します。

  2. アプリケーション プール ID (アプリケーション プール プロセス アカウント) に使用するドメイン ユーザー アカウントのサービス プリンシパル名 (SPN) を構成します。

  3. ドメイン ユーザー アカウントの SPN を Active Directory に登録します。

IIS 管理者

フォーム

  1. SharePoint Web アプリケーションの Web.config ファイルにメンバシップ プロバイダを登録します。

  2. SharePoint Web アプリケーションの Web.config ファイルにロール マネージャを登録します (省略可能)。

  3. サーバーの全体管理サイトの Web.config ファイルにメンバシップ プロバイダを登録します。

  • ASP.NET 開発者

  • 接続先の ID 管理システムの管理者

Web SSO

ASP.NET フォーム認証に必要な構成手順のほか、Web SSO プロバイダの HTTP モジュールを登録します。

  • ASP.NET 開発者

  • 接続先の ID 管理システムの管理者

外部 ID 管理システムや Windows ベースでない ID 管理システムに接続する

Windows ベースでない ID 管理システムや外部の ID 管理システムに対するユーザー認証に ASP.NET フォームや Web SSO を使用するには、メンバシップ プロバイダを Web.config ファイルに登録する必要があります。メンバシップ プロバイダだけではなく、ロール マネージャも登録することができます。Office SharePoint Server 2007 では、標準の ASP.NET ロール マネージャ インターフェイスを使用することによって、現在のユーザーに関するグループ情報を収集します。Office SharePoint Server 2007 の承認プロセスは、各 ASP.NET ロールを 1 つのドメイン グループのように扱います。Web.config ファイルにおけるロール マネージャの登録は、認証のためのメンバシップ プロバイダの登録と同じ方法で行います。

サーバーの全体管理サイトからメンバシップ ユーザーやロールを管理したい場合には、サーバーの全体管理サイトの Web.config ファイルにメンバシップ プロバイダとロール マネージャを登録するという方法もあります (コンテンツをホストする Web アプリケーションの Web.config ファイルへのメンバシップ プロバイダとロール マネージャの登録に加えて)。

Web.config ファイルに登録するメンバシップ プロバイダ名とロール マネージャ名としては、サーバーの全体管理サイトの Authentication.aspx ページに入力したものと同じものを登録してください。Web.config ファイルにロール マネージャを入力しなかった場合、machine.config ファイルに指定されている既定プロバイダが使用される可能性があります。

たとえば Web.config ファイル内の次の文字列は、SQL メンバシップ プロバイダを指定します。

<membership defaultProvider="AspNetSqlMembershipProvider">

ASP.NET フォーム認証を使用しての SQL Server 認証プロバイダとの接続の詳細については、「認証の例」を参照してください。

最後に、Web SSO を使用して外部の ID 管理システムに接続する場合、Web SSO の HTTP モジュールも登録する必要があります。HTTP モジュールは、お使いのアプリケーションに対して要求が行われるたびに呼び出されるアセンブリです。HTTP モジュールは、ASP.NET 要求パイプラインの一部として呼び出されます。詳細については、「Introduction to HTTP Modules (英語)」(https://go.microsoft.com/fwlink/?linkid=77954&clcid=0x411) を参照してください。

ASP.NET フォーム認証との統合を行う場合、認証プロバイダに対する要件が増大します。各種の要素を Web.config ファイルに登録するほか、メンバシップ プロバイダ、ロール マネージャ、HTTP モジュールを下表のとおりプログラミングし、Office SharePoint Server 2007 や ASP.NET メソッドとのやり取りが可能となるようにする必要があります。

分類 説明

メンバシップ プロバイダ

Office SharePoint Server 2007 を使用するには、次のメソッドをメンバシップ プロバイダが実装する必要があります。

  • GetUser (文字列)   Office SharePoint Server 2007 は、招待時にユーザー名を解決するときやユーザーの表示名を取得するときに、このメソッドを呼び出します。

  • GetUserNameByEmail   Office SharePoint Server 2007 は、招待時にユーザー名を解決するときに、このメソッドを呼び出します。

  • FindUsersByName, FindUsersByEmail   Office SharePoint Server 2007 は、[ユーザーの追加] ページでユーザー選択コントロールを入力するときに、これらのメソッドを呼び出します。メンバシップ プロバイダがユーザーを返さなかった場合には選択が機能しないので、ユーザーの名前や電子メール アドレスを管理者が [ユーザーの追加] ボックスに入力する必要があります。

ロール マネージャ

ロール マネージャは、以下のメソッドを実装する必要があります。

  • RoleExists   Office SharePoint Server 2007 は、招待時にロール名が存在することを確認するときに、このメソッドを呼び出します。

  • GetRolesForUser   Office SharePoint Server 2007 は、アクセス チェックで現在のユーザーのロールを収集するときに、このメソッドを呼び出します。

  • GetAllRoles   Office SharePoint Server 2007 は、グループとロールの選択を入力します。ロール プロバイダがグループやロールを返さなかった場合 Office SharePoint Server 2007 選択は機能しないので、ロールの名前を管理者が [ユーザーの追加] ボックスに入力する必要があります。

HTTP モジュール

HTTP モジュールは、以下のイベントを処理する必要があります。

  • AuthenticateRequest   ASP.NET によるユーザー認証が可能な状態となったとき、このイベントが呼び出されます。Web SSO モジュールはユーザーの認証 Cookie をアンパックし、現在のユーザーの ID で HttpContext.User POP を設定する必要があります。

  • EndRequest   ASP.NET パイプラインにおける最終イベントです。このイベントは、コードをクライアントに戻す直前に呼び出されます。Web SSO モジュールは Office SharePoint Server 2007 からの 401 応答を取得し、Web SSO ログオン サーバーへの認証用 302 リダイレクトに変換する必要があります。

匿名アクセスを有効にする

よりセキュアな認証方法を構成するほか、Web アプリケーションの匿名アクセスを有効にすることができます。この構成を使用した場合、Web アプリケーション内のサイトの管理者は、匿名アクセスを許可することができます。セキュリティ保護されたリソースや機能にアクセスしたい匿名ユーザーは、ログオン ボタンをクリックして資格情報を送信します。

異なる認証方法を使用してサイトにアクセスする

最大 5 種類の認証方法や ID 管理システムによってアクセスできるように、Office SharePoint Server 2007 内の Web アプリケーションを構成することができます。下図は、2 種類の ID 管理システムからのユーザーがアクセスできるように構成された、パートナー アプリケーションを示しています。社内従業員は、標準の Windows 認証方法のいずれか 1 つによって認証されます。パートナー企業の従業員は、自社の ID 管理システムによって認証されます。

認証オプションの管理の図

複数の異種認証システムがアクセスできるように Web アプリケーションを構成するには、Web アプリケーションにゾーンを追加構成する必要があります。ゾーンは、1 つの物理アプリケーションにアクセスするためのさまざまな論理パスを表します。通常のパートナー アプリケーションの場合、パートナー企業の従業員はインターネットを経由してアプリケーションにアクセスし、社内従業員はイントラネットを介してアプリケーションに直接アクセスします。

新しいゾーンを作成するには、Web アプリケーションを拡張します。[別の IIS Web サイトへの Web アプリケーションの拡張] ページの [負荷分散される URL] セクションに、URL とゾーン タイプを指定します。ゾーン タイプはゾーンのカテゴリ名にすぎず、ゾーン構成に対して作用することはありません。

Web アプリケーションの拡張後、新規ゾーンに対する認証方法を構成します。下図は、2 種類のゾーンを使用して構成された Web アプリケーションの [認証プロバイダ] ページを示しています。既定ゾーンは、社内従業員が使用するゾーンです。パートナー アクセス用にはインターネット ゾーンが構成され、ASP.NET フォームとパートナーの ID 管理システムを使用して認証が行われます。

2 つのゾーンを使用して構成された Web アプリケーション

クロール コンテンツの認証を計画する

Web アプリケーション内でコンテンツのクロールを正常に行うには、インデックス サーバーのインデックス コンポーネントの認証要件を把握している必要があります (クローラとも呼ばれる)。ここでは、Web アプリケーションのコンテンツを正常にクロールできるための Web アプリケーションの構成方法について説明します。

すべての既定設定を使用してファーム管理者が Web アプリケーションを作成した場合、この Web アプリケーションの既定ゾーンは NTLM を使用するように構成されます。ファーム管理者は、Office SharePoint Server 2007 でサポートされている認証方法であればどの方法にでも、既定ゾーンの認証方法を変更することができます。

ファーム管理者は、Web アプリケーションを 1 回以上拡張して追加ゾーンを有効にすることもできます。1 つの Web アプリケーションに最大 5 個のゾーンを関連付けることができ、Office SharePoint Server 2007 でサポートされているどんな認証方法でも使用するように各ゾーンを構成することができます。

既定では、コンテンツのクロール時にクローラは NTLM を使用します。検索サービス管理者は、特定の範囲の URL をクロールするときに NTLM ではなく、基本認証、クライアント証明書など、異なる認証方法を使用するようにクローラを構成する、クロール ルールを作成することもできます。クロール ルールの詳細については、「コンテンツのクロールを計画する (Office SharePoint Server)」を参照してください。

クローラがゾーンにアクセスする順序

Web アプリケーションのゾーンを計画する際には、認証試行時にクローラがゾーンをアクセスするポーリング順序を考慮してください。ポーリング順序が重要であるのは、標準ポート (80 または 443) を使用しないダイジェスト認証や Kerberos 認証の使用が構成されたゾーンにクローラが遭遇すると認証が失敗し、次のポーリング順序のゾーンにクローラはアクセスしなくなるためです。こういった事態が発生した場合、クローラはこの Web アプリケーションのコンテンツをクロールしません。

ヒント

クローラに構成されている認証方法のポーリング順序の方が、非標準ポートを使用する Kerberos 認証やダイジェスト認証に構成されているゾーンのポーリング順序より早いことを確認してください。

クローラは、次の順序でゾーンをポーリングします。

  • 既定ゾーン

  • イントラネット ゾーン

  • インターネット ゾーン

  • カスタム ゾーン

  • エクストラネット ゾーン

下図は、クローラが認証しようとしたときに認証システムが下す決定を示しています。

クローラがゾーンをポーリングする方法

クローラで使用されるポーリングの順番

次の表は、図中の各番号の部分に関連する動作を説明しています。

コールアウト 操作

1

クローラは、既定ゾーンを使用して認証しようとします。

注意

認証試行時、クローラは必ず既定ゾーンを最初に使用します。

2

クローラとゾーンに同じ認証方法が構成されている場合、クローラは認証され、承認段階に進みます。それ以外の場合は、手順 3. に進みます。

3

ゾーンに Kerberos 認証が構成されている場合、手順 4. に進みます。それ以外の場合は、手順 5. に進みます。

4

ゾーンがポート 80 または ポート 443 を使用するように構成されている場合、クローラが認証され、承認段階へ進みます。それ以外の場合、認証は失敗し、クローラは別のゾーンを使用して認証を行おうとはしません。つまり、コンテンツはクロールされません。

5

ポーリング順序内に残っているゾーンがない場合、認証は失敗し、コンテンツはクロールされません。それ以外の場合は、手順 6. に進みます。

6

クローラは、ポーリング順序内の次のゾーンを使用して認証しようとします。 手順 2. に戻ります。

Web SSO など、クローラがサポートしない認証方法を使用するように既定ゾーンを構成した場合、少なくとも 1 つのゾーンを追加作成し、証明書、基本認証、標準ポートを使用する Kerberos、NTLM のどちらかを使用するようにこのゾーンを構成する必要があります。証明書や基本認証によって Web アプリケーションをクロールする場合、該当する認証方法をこの Web アプリケーションのクロール時に使用するようにクローラを構成するクロール ルールを、検索サービス管理者が作成する必要があります。次のシナリオについて考えてみます。

認証シナリオ

ファーム管理者が Web アプリケーションを作成し、フォーム認証を使用するよう構成しました。ファーム管理者は、この Web アプリケーションのコンテンツのクロールとインデックス付けを行いたいと共に、NTLM、基本認証、証明書のいずれかが構成されたゾーンをクローラが必要とすることを知っています。このため、ファーム管理者はこの Web アプリケーションを拡張し、NTLM を使用するようイントラネット ゾーンを構成します。

既定ゾーンを使用してクローラが認証を行おうとすると、クローラとゾーンに構成された認証方法が同一ではないことを認証システムが検知します。このゾーンには非標準ポートを使用する Kerberos 認証とダイジェスト認証のどちらも構成されておらず、ポーリング順序内には少なくとももう 1 つのゾーンがあるので、クローラはイントラネット ゾーンを使用して認証しようとします。イントラネット ゾーンには NTLM の使用が構成されており、クローラにも NTLM の使用が構成されているので、既定では認証が成功します。

ただし、ファーム管理者が NTLM ではなく基本認証をイントラネット ゾーンに構成した場合には、この Web アプリケーションのクロール時に基本認証を使用するようクローラを構成するクロール ルールを、検索サービス管理者が作成する必要があります。このクロール ルールを作成しなかった場合、認証は失敗し、コンテンツはクロールされません。同様に、ファーム管理者クライアント証明書イントラネット ゾーンに構成した場合には、この Web アプリケーションのクロール時にクライアント証明書を使用するようクローラを構成するクロール ルールを、検索サービス管理者が作成する必要があります。さらに、サーバー管理者がクライアント証明書をインデックス サーバーに登録する必要があります。この登録を行わなかった場合、認証は失敗し、コンテンツはクロールされません。

ヒント

Web アプリケーションの認証とこれらの Web アプリケーションのコンテンツ クロールを効果的に計画するには、Web アプリケーションを作成するファーム管理者とクローラを構成する検索サービス管理者とのグループ作業が必要となります。

基本認証と証明書のどちらかを使用するようにゾーンを構成し、このゾーンを使用してクローラに認証させたい場合には、認証に使用する予定のゾーンと同じ認証方法を使用するようにクローラを構成するクロール ルールを、検索サービス管理者は作成しなければなりません。このクロール ルールを作成しなかった場合、クローラは次に利用可能なゾーンを使用しようとします。

認証方法を正しく構成するだけでなく、Web アプリケーション内のコンテンツのクロールがクローラに承認されていることを確認する必要があります。検索サービス管理者は、このゾーンによってアクセスするコンテンツに対する読み取りアクセス許可レベルをコンテンツ アクセス アカウントが持っていることを確認する必要があります。ファーム管理者は、Web アプリケーションに対する読み取りアクセス許可レベルをコンテンツ アクセス アカウントに与えるポリシーを作成することによってこれを行うことができます。

認証デザイン用ゾーンの計画

複数の認証方法を 1 つの Web アプリケーションに対してゾーンを使用して実装する場合には、次のガイドラインに従ってください。

  • 既定ゾーンを使用して、最もセキュアな認証設定を実装します。要求を特定のゾーンと関連付けることができない場合、既定ゾーンの認証設定とセキュリティ ポリシーが適用されます。既定ゾーンとは、Web アプリケーションの作成時に作成するゾーンです。通常、最もセキュアな認証設定は、エンドユーザー アクセスを対象としています。したがって、エンド ユーザーがアクセスする確率が高いゾーンは、既定ゾーンです。

  • アプリケーションが必要とする最小限度のゾーンを使用してください。各ゾーンは、Web アプリケーションにアクセスするための新規 IIS サイトとドメインに関連付けられます。必要となったときにのみ、新しいアクセス ポイントを追加してください。

  • Web アプリケーション内のコンテンツを検索結果に含めたい場合には、少なくとも 1 つのゾーンに NTLM 認証の使用を構成してください。NTLM 認証は、インデックス コンポーネントがコンテンツのクロールを行う際に必要です。必要でない限り、インデックス コンポーネントの専用ゾーンを作成しないでください。

環境で使用できる認証方法を選択する

認証の計画では、認証の構成方法を理解するだけではなく以下の作業を行います。

  • Office SharePoint Server 2007 における Web アプリケーションのセキュリティ コンテキストやセキュリティ環境を考慮する。

  • 各方法の推奨事項とトレードオフを吟味する。

  • ユーザーの資格情報と ID データが Office SharePoint Server 2007 によってどのようにキャッシュされ使用されるかを理解する。

  • ユーザー アカウントがどのように管理されるかを理解する。

  • 認証方法とユーザーが使用するブラウザとが互換であることを保証する。

ワークシートでの作業

認証方法ワークシート (https://go.microsoft.com/fwlink/?linkid=77970&clcid=0x411」を使用して、どの認証方法を環境でサポートするかを決定し、各認証方法についての決定結果と推奨事項を記録します。このワークシートは、Office SharePoint Server 2007 の個々の Web アプリケーションの認証方法を計画する際に使用します。

個々のセキュリティ環境の推奨事項

どの認証方法を選ぶかは、アプリケーションのセキュリティ コンテキストに大きく左右されます。下表は、最も一般的なセキュリティ環境についての考慮事項を示しています。

環境 考慮事項

社内イントラネット

少なくとも、ユーザー資格情報をプレーン ビューから保護します。環境に実装されているユーザー管理システムと統合します。Active Directory が実装されている場合には、IIS に埋め込まれている Windows 認証方法を使用します。

外部のセキュリティ保護されたグループ作業

サイトに接続するパートナー企業ごとにゾーンを構成します。Web SSO を使用して、各パートナーの ID 管理システムとの認証を行います。この結果、自社の ID 管理システムにアカウントを作成する必要がなくなると共に、投稿者 ID の維持と検証は今後もパートナー経営者によって行われます。パートナー企業の従業員でなくなった投稿者は、パートナー アプリケーションにアクセスできなくなります。

外部匿名

匿名アクセスを有効にし (認証なし)、インターネットから接続するユーザーに対して読み取り専用アクセスを許可します。特定のコンテンツやロール ベースのコンテンツを提供するには、ユーザー名とロールで構成されたシンプルなデータベースを使用することによって、ASP.NET フォーム認証によるユーザー登録を行います。登録プロセスを使用して、ロール (医師、患者、薬剤師など) によるユーザー識別を行います。ユーザーがログオンすると、そのユーザー ロール固有のコンテンツをサイトに提示することができます。このシナリオでは、資格情報の検証やコンテンツにアクセスできるユーザーの制限に認証が使用されることはありません。認証プロセスは、コンテンツを特定する方法にすぎません。

認証方法の推奨事項とトレードオフ

各認証方法の利点、推奨事項、トレードオフを理解すれば、どの方法を環境に使用したらよいかを判断しやすくなります。下表は、各認証方法の推奨事項とトレードオフを示しています。IIS でサポートされているそれぞれの Windows 認証方法の詳細については、「IIS の認証」(https://go.microsoft.com/fwlink/?linkid=78066&clcid=0x411) を参照してください。

認証方法 利点と推奨事項 トレードオフ

Windows

  • 既存の Active Directory アカウントを使用して認証します。

  • ユーザー管理を簡略化します。

  • Office SharePoint Server 2007 認証の構成時に Active Directory を活用します。

  • ユーザー設定コードの作成を回避します。

  • 方法ごとに、長所と短所があります。

  • すべての Web ブラウザではサポートされていない IIS 認証プロトコルがあります。

ASP.NET フォーム

  • Active Directory を使用しない環境で Office SharePoint Server 2007 をセットアップします (Windows アカウントを必要としない)。

  • パートナー アプリケーションの作成時に、複数の異なる ID 管理システムを使用して認証を行います。

  • 任意の条件を使用して、カスタム認証スキームを実装します。

  • インターネットからのユーザーを認証します。

  • Web.config ファイルのカスタマイズを必要とします。

  • SSL Transport Layer Security (TLS) を使用していない限り、Cookie 存続期間中の間、再生攻撃を受ける可能性があります。

Web SSO

  • 複合認証を使用する環境で Office SharePoint Server 2007 を実装し、複数の組織とセキュリティ環境に渡ってデジタル ID のセキュリティ保護を保証します。

  • Active Directory を使用しない環境を含む異なるプラットフォーム上で実行されるサービスに SSO を提供する環境で Office SharePoint Server 2007 を実装します。

  • AD FS を活用します。

  • パートナー アプリケーションの作成時に、複数の異なる ID 管理システムを使用して認証を行います。

  • 既存の複合認証システムを必要とします。

  • Web.config ファイルのカスタマイズを必要とします。

  • AD FS は、SSL を必要とします。その他の SSO システムの場合、その他の要件を持つ可能性があります。

ユーザー ID 情報の管理

ユーザーの資格情報やその他の ID 情報が Office SharePoint Server 2007 によってどのように処理され使用されるかが、用途に最適の認証オプションの選択結果を左右する可能性があります。ここでは、ユーザー ID 情報がどのように処理されるかを、次のカテゴリ別に詳述します。

  • バイナリ ID   ユーザーのバイナリ識別子 (ID) が Office SharePoint Server 2007 によってどのように作成され使用されるか。

  • キャッシュ   要求ごとに認証プロセスを繰り返さないで済むよう、ユーザー ID を一定期間保持するプロセス。

  • ロールとグループ メンバシップ   認証プロセスは、ユーザーの身元を確認するだけでなく、ユーザーが属するグループやロールも確認します。この情報は認証プロセスにおいて使用され、どの操作の実行権限をユーザーが持っているかが判断されます。認証処理において、Office SharePoint Server 2007 は、Active Directory グループと ASP.NET ロールを同じタイプのエンティティとして扱います。

下表は、ユーザー バイナリ ID、キャッシュされたユーザー データ、およびロールとグループ メンバシップのデータを Office SharePoint Server 2007 がどのように管理するかを、認証方法別に詳述しています。

項目 Windows 認証 ASP.NET フォームと Web SSO

バイナリ ID

Office SharePoint Server 2007 は、Windows セキュリティ識別子 (SID) を使用します。

Office SharePoint Server 2007 は、プロバイダ名とユーザー名を組み合わせて一意のバイナリ ID を作成します。

キャッシュ

IIS、Internet Explorer、Windows によって、ユーザー資格情報がキャッシュされ管理されます。

ASP.NET は、1 セッション期間中、暗号化された Cookie を使用してユーザーの資格情報を保持します。

ロールとグループ メンバシップ

Windows は、ユーザーが属する Active Directory ドメイン グループのリストをアクセス トークンに保存します。Office SharePoint Server 2007 は、アクセス トークンに保存された情報を使用します。

ロール マネージャが登録されると、Windows SharePoint Services は、標準のロール マネージャ インターフェイスを使用して現在のユーザーに関するグループ情報を収集します。承認プロセスは、各 ASP.NET ロールを 1 つのドメイン グループのように扱います。Web.config ファイルに構成された設定に従って、ASP.NET は、ユーザーが属するロールを Cookie にキャッシュすることができます。

ユーザー アカウントの管理

通常のユーザー アカウント管理タスクを Office SharePoint Server 2007 がどのように処理するかを把握することも、認証方法の選択結果を左右する可能性があります。一般に、1 つのゾーンの認証プロバイダのメンバであるユーザーは、権限が付与されている限りすべてのゾーンにおいてアカウントを管理できます。以下の情報は、どの認証方法が実装されているかに関係なく、適用されます。

  • 新規ユーザーの追加と招待   メンバシップ プロバイダとロール マネージャが現在の Web.config ファイルに登録されていれば、あらゆるゾーンからの新規ユーザーおよび構成済みの認証方法すべてを追加したり招待したりできます。新規ユーザーを追加するとき、Office SharePoint Server 2007 は、次のソースを次の順序で使用してユーザー名を解決します。

    • Office SharePoint Server 2007 によって保存される UserInfoList テーブル。ユーザーが別のサイトに既に追加済みである場合、ユーザー情報はこのリストに存在します。

    • 現在のゾーンについて構成されている認証プロバイダ。たとえば既定ゾーンについて構成されている認証プロバイダのメンバであるユーザーの場合、Office SharePoint Server 2007 は、このメンバシップ プロバイダをまずチェックします。

    • その他の認証プロバイダすべて。

  • ユーザーの削除   ユーザー アカウントが削除されたことが Office SharePoint Server 2007 データベースにおいてマークされます。ただし、ユーザー レコードは削除されません。

認証プロバイダによっては、Office SharePoint Server 2007 内のユーザー アカウント管理の動作の一部が異なります。下表は、実装されている認証方法によって一般的に異なるユーザー アカウント タスクのいくつかを示しています。

タスク Windows 認証アカウント ASP.NET フォーム認証され Web SSO 認証されたアカウント

新規ユーザーの追加と招待

Office SharePoint Server 2007 は、Active Directory を使用してユーザー ID を検証します。

Office SharePoint Server 2007 はメンバシップ プロバイダとロール マネージャを呼び出し、ユーザーとロールが存在することを検証します。

ログオン名への変更

更新されたユーザー名は、Office SharePoint Server 2007 が自動的に認識します。新規エントリは、UserInfoList テーブルに追加されません。

旧アカウント名を削除し、新規アカウント名を追加する必要があります。アクセス権を移行することはできません。

ログオン

統合 Windows 認証 (Kerberos または NTLM) を使用していると共に、ブラウザに自動ログオンが構成されている場合、ユーザーは、SharePoint サイトに手動でログオンする必要がありません。既定では、イントラネット サイトに自動的にログオンするよう、Internet Explorer が構成されます。ログオンが必要である場合 (別の資格情報セットを必要とするサイトなど)、ユーザーが入力を求められるのはユーザー名とパスワードだけです。ただし、基本認証を使用するか、自動ログオンが構成されていないブラウザをユーザーが使用している場合には、SharePoint サイトへのアクセス時にログオン資格情報の入力がユーザーに求められる可能性があります。

Office SharePoint Server 2007 は、フォーム認証で使用する標準ログオン ページを備えています。このページには、ユーザー名、パスワード、自動サインイン (Cookie 持続のため) のフィールドがあります。自分専用のログオン ページを作成してその他のログオン コントロールを追加することができます (新規アカウントの作成やパスワードのリセット)。

ブラウザのサポート

サポートされている各認証方法がすべてのブラウザで機能するとは限りません。環境で使用する認証方法を選択する前に、サポートする必要があるブラウザがどれであるかを確認してください。次に、それらのブラウザがサポートする認証方法はどれであるかを確認します。Internet Explorer は、サポートされている認証方法のすべてで使用できます。Office SharePoint Server 2007 でサポートされているその他のブラウザは、次のとおりです。

  • Netscape 8.0

  • Netscape 7.2

  • Mozilla 1.7.12

  • Firefox 1.5

  • Safari 2.02

ワークシート

環境に適した認証方法を記録するには、以下のワークシートを使用します。

下表は、ワークシートの記入例です。

認証方法 許可する 許可しない メモおよび推奨事項

匿名

x

基本

x

ダイジェスト

x

証明書

x

NTLM (統合 Windows)

x

*「財務部以外の全部門サイトで NTLM を使用する」*

Kerberos (統合 Windows)

x

*「高度のセキュリティ サービス レベル協定を持つサイトには Kerberos 認証を使用する」*

ASP.NET フォーム

x

*「パートナー エクストラネットでホストされるサイトへのパートナー企業のアクセスを許可するには、フォーム認証を使用する。現時点では、Active Directory、LDAP の ID 管理システムを使用した認証を許可している。フォーム認証で使用する認証設定を、Sidney Higa と協力して開発する」*

Web SSO

x

*「この方法をパートナー アプリケーションに使用するのは、複合 ID 管理システムに参加しているパートナー企業の場合だけである。詳細については、David Jones に問い合わせる」*

追加メモ 「SharePoint Web アプリケーションの認証設定すべてを、Denise Smith と協力してサインオフする」

このブックをダウンロードする

このトピックは、簡単に読んだり印刷したりできるように、次のダウンロード可能なブックに収められています。

入手できるすべてのブックの一覧については、「Office SharePoint Server 2007 のダウンロード可能なブック」を参照してください。

関連項目

概念

論理アーキテクチャ モデル : 企業展開