次の方法で共有


Kerberos 認証を構成する (SharePoint Foundation 2010)

 

適用先: SharePoint Foundation 2010

この記事の内容

  • Kerberos 認証について

  • はじめに

  • SQL 通信の Kerberos 認証を構成する

  • Kerberos 認証を使用して Web アプリケーションのサービス プリンシパル名を作成する

  • サーバー ファームを展開する

  • ファーム内のサーバーのサービスを構成する

  • Kerberos 認証を使用して Web アプリケーションを作成する

  • ポータル サイトの Web アプリケーションでグループ作業ポータル テンプレートを使用してサイト コレクションを作成する

  • Kerberos 認証を使用して Web アプリケーションに正しくアクセスできることを確認する

  • 検索インデックスが正しく機能していることを確認する

  • 検索クエリが正しく機能していることを確認する

  • 構成の制限

  • 追加のリソースとトラブルシューティングのガイダンス

Kerberos 認証について

Kerberos は、チケット認証をサポートする安全なプロトコルです。Kerberos 認証サーバーは、有効なユーザー資格情報とサービス プリンシパル名 (SPN) がクライアント コンピューター認証要求に含まれている場合、その要求に応じてチケットを発行します。クライアント コンピューターは、そのチケットを使用してネットワーク リソースにアクセスします。Kerberos 認証を有効にするには、クライアント コンピューターおよびサーバー コンピューターが、ドメインのキー配布センター (KDC) への信頼関係接続を保持していることが必要です。KDC は、共有秘密キーを配布して暗号化を有効にします。さらに、クライアント コンピューターおよびサーバー コンピューターは、Active Directory ドメイン サービス (AD DS) にアクセスできる必要があります。AD DS では、フォレスト ルート ドメインが Kerberos 認証参照の中心となります。

Kerberos 認証を使用して、Microsoft SharePoint Foundation 2010 を実行しているサーバー ファームを展開するには、コンピューターにさまざまなアプリケーションをインストールして構成する必要があります。この記事では、SharePoint Foundation 2010 を実行しているサーバー ファームの例を示し、Kerberos 認証を使用して次の機能をサポートするようにサーバー ファームを展開および構成するためのガイダンスを示します。

  • SharePoint Foundation 2010 と Microsoft SQL Server データベース ソフトウェア間の通信。

  • SharePoint サーバーの全体管理 Web アプリケーションへのアクセス。

  • ポータル サイト Web アプリケーションおよび個人用サイト Web アプリケーションを含む、その他の Web アプリケーションへのアクセス。

はじめに

この記事は、次に関する知識を持っている管理レベルの担当者を対象としています。

  • Windows Server 2008

  • Active Directory

  • インターネット インフォメーション サービス (IIS) 6.0 (または IIS 7.0)

  • SharePoint Foundation 2010

  • Windows Internet Explorer

  • Kerberos 認証 (Windows Server 2008 の Active Directory ドメイン サービス (AD DS) での実装)

  • Windows Server 2008 でのネットワーク負荷分散 (NLB)

  • Active Directory ドメインでのコンピューター アカウント

  • Active Directory ドメインでのユーザー アカウント

  • IIS Web サイトと、そのバインドおよび認証の設定

  • IIS Web サイトの IIS アプリケーション プール ID

  • SharePoint 製品構成ウィザード

  • SharePoint Foundation 2010 Web アプリケーション

  • サーバーの全体管理ページ

  • サービス プリンシパル名 (SPN) および Active Directory ドメインで SPN を構成する方法

重要

Active Directory ドメインで SPN を作成するには、ドメイン管理レベルのアクセス許可を持っている必要があります。

この記事では、Kerberos 認証の詳細については説明しません。Kerberos は業界標準の認証方法であり、AD DS に実装されています。

この記事では、SharePoint Foundation 2010 のインストール、および SharePoint 製品構成ウィザードの使用に関する具体的な手順は示しません。

この記事では、サーバーの全体管理を使用して SharePoint Foundation 2010 Web アプリケーションを作成するための具体的な手順は示しません。

ソフトウェアのバージョンに関する要件

この記事のガイダンスおよびこのガイダンスを確認するために実行するテストは、Windows Server 2008 および Windows Update サイト (https://go.microsoft.com/fwlink/?linkid=101614&clcid=0x411) から最新の更新プログラムを適用した Internet Explorer を実行しているシステムを使用した結果に基づいています。インストールされているソフトウェアのバージョンは次のとおりです。

さらに、Active Directory ドメイン コントローラーで、Windows Update サイト (https://go.microsoft.com/fwlink/?linkid=101614&clcid=0x411) から最新の更新プログラムを適用した Windows Server 2008 を実行していることを確認する必要があります。

既知の問題

Kerberos 認証を使用するように構成されている Web アプリケーションが、既定のポート (TCP ポート 80 および Secure Sockets Layer (SSL) ポート 443) にバインドされた IIS 仮想サーバー上にホストされている場合、SharePoint Foundation 2010 は、それらの Web アプリケーションをクロールできます。ただし、Kerberos 認証を使用するように構成されている SharePoint Foundation 2010 Web アプリケーションが、既定以外のポート (TCP ポート 80 および Secure Sockets Layer (SSL) ポート 443 以外のポート) にバインドされた IIS 仮想サーバー上にホストされている場合、SharePoint Foundation 2010 Search は、それらの Web アプリケーションをクロールできません。現時点で SharePoint Foundation 2010 Search がクロールできるのは、NTLM 認証または基本認証のどちらかを使用するように構成されている、既定以外のポートにバインドされた IIS 仮想サーバー上にホストされている SharePoint Foundation 2010 Web アプリケーションだけです。

Kerberos 認証を使用したエンド ユーザーのアクセスのために、既定以外のポートにバインドされた IIS 仮想サーバー上にしかホストできない Web アプリケーションを展開する必要があり、エンド ユーザーがクエリ結果を取得できるようにする場合は、次のことが必要になります。

  • 既定以外のポートを使用する他の IIS 仮想サーバー上に、同じ Web アプリケーションがホストされている必要があります。

  • Web アプリケーションは、NTLM 認証または基本認証のどちらかを使用するように構成されている必要があります。

  • 検索インデックスは、NTLM 認証または基本認証を使用して Web アプリケーションをクロールする必要があります。

この記事では、次の内容に関するガイダンスを示します。

  • 既定以外のポートにバインドされた IIS 仮想サーバー上にホストされているサーバーの全体管理 Web アプリケーションを、Kerberos 認証を使用して構成する。

  • 既定のポートにバインドされ、IIS ホスト ヘッダー バインドを持つ IIS 仮想サーバー上にホストされているポータル アプリケーションおよび個人用アプリケーションを、Kerberos 認証を使用して構成する。

  • 検索インデックスが、Kerberos 認証を使用して正しく SharePoint Foundation 2010 Web アプリケーションをクロールできるようにする。

  • Kerberos 認証された Web アプリケーションにアクセスするユーザーが、それらの Web アプリケーションの検索クエリ結果を正しく取得できるようにする。

追加の背景情報

Kerberos 認証を使用するときは、Kerberos を使用して認証を行おうとしているクライアントの動作が、正確な認証機能の条件の 1 つとなることを理解するのが重要です。Kerberos 認証を使用する SharePoint Foundation 2010 ファームの展開では、SharePoint Foundation 2010 はクライアントではありません。Kerberos 認証を使用して SharePoint Foundation 2010 を実行するサーバー ファームを展開する前に、次のクライアントの動作について理解する必要があります。

  • ブラウザー (この記事では、ブラウザーは常に Internet Explorer です)。

  • Microsoft .NET Framework。

ブラウザーは、SharePoint Foundation 2010 Web アプリケーションで Web ページを参照するときに使用されるクライアントです。SharePoint Foundation 2010 が、SharePoint Foundation 2010 のローカル コンテンツ ソースのクロールなどのタスクを実行するときは, .NET Framework がクライアントとして機能します。

Kerberos 認証が正しく機能するためには、AD DS で SPN を作成する必要があります。これらの SPN が対応するサービスが、既定以外のポートでリッスンしている場合、SPN にはポート番号を含める必要があります。これは、SPN を意味のあるものとするためです。また、重複した SPN の作成を防ぐ目的もあります。

クライアントが Kerberos 認証を使用してリソースにアクセスしようとするときは、Kerberos 認証プロセスの一部として使用される SPN をクライアントが構築する必要があります。AD DS で構成された SPN に一致する SPN をクライアントが構築しない場合、Kerberos 認証は失敗し、通常は "アクセス拒否" エラーが発生します。

Internet Explorer のバージョンによっては、ポート番号を含む SPN を構築できないことがあります。IIS で既定以外のポート番号にバインドされた SharePoint Foundation 2010 アプリケーションを使用している場合、作成する SPN にポート番号を含めるように Internet Explorer で指定することが必要になる場合があります。SharePoint Foundation 2010 を実行しているファームでは、サーバーの全体管理 Web アプリケーションは、既定で、既定以外のポートにバインドされた IIS 仮想サーバーによってホストされます。そのため、この記事では、ポートにバインドされた IIS Web サイトとホスト ヘッダーにバインドされた IIS Web サイトの両方について説明します。

既定では、SharePoint Foundation 2010 を実行しているファームでは, .NET Framework はポート番号を含む SPN を構築しません。これが、既定以外のポートにバインドされた IIS 仮想サーバー上に Web アプリケーションがホストされていると、Kerberos 認証を使用して Web アプリケーションを検索でクロールできない理由です。

サーバー ファームのトポロジ

この記事では、SharePoint Foundation 2010 のサーバー ファームの次のトポロジについて説明します。

  • Windows NLB が構成され、フロントエンド Web サーバーとして機能している Windows Server 2008 を実行している 2 台のコンピューター。

  • アプリケーション サーバーとして機能している Windows Server 2008 を実行している 3 台のコンピューター。アプリケーション サーバーの 1 台は、サーバーの全体管理 Web アプリケーションをホストしています。2 台目のアプリケーション サーバーは検索クエリを実行しており、3 台目のアプリケーション サーバーは検索インデックスを実行しています。

  • SharePoint Foundation 2010 を実行しているファームの SQL ホストとして使用されており、Windows Server 2008 を実行している 1 台のコンピューター。この記事のシナリオでは、Microsoft SQL Server 2008 を使用できます。

Active Directory ドメイン サービス、コンピューターの名前、および NLB の命名規則

この記事のシナリオでは、Active Directory、コンピューターの名前、および NLB に関して次の命名規則を使用します。

サーバー ロール ドメイン名

Active Directory ドメイン サービス

mydomain.net

SharePoint Foundation 2010 が実行されているフロントエンド Web サーバー

wssfe1.mydomain.net

SharePoint Foundation 2010 が実行されているフロントエンド Web サーバー

wssfe2.mydomain.net

SharePoint Foundation 2010 サーバーの全体管理

wssadmin.mydomain.net

SharePoint Foundation 2010 を実行している検索インデックス

wsscrawl.mydomain.net

SharePoint Foundation 2010 を実行している検索クエリ

wssquery.mydomain.net

SharePoint Foundation 2010 を実行している SQL Server ホスト

wsssql.mydomain.net

wssfe1.mydomain.net および wssfe2.mydomain.net で NLB を構成すると、これらのシステムに NLB VIP が割り当てられます。このアドレスをポイントする一連の DNS ホスト名が DNS システムに登録されます。たとえば、NLB VIP が 192.168.100.200 である場合、次の DNS 名をこの IP アドレス (192.168.100.200) に解決する一連の DNS レコードがあります。

  • kerbportal.mydomain.net

  • kerbmysite.mydomain.net

Active Directory ドメイン アカウントの命名規則

この記事の例では、SharePoint Foundation 2010 を実行しているファームに使用されるサービス アカウントおよびアプリケーション プール ID で、次の表に示す命名規則を使用しています。

ドメイン アカウントまたはアプリケーション プール ID 名前

ローカル管理者のアカウント

  • SharePoint Foundation 2010 を実行しているすべてのサーバー (SQL Server を実行しているホスト コンピューターを除く)

  • SharePoint Foundation 2010 のセットアップおよび SharePoint 製品構成ウィザードを実行するユーザー

mydomain\pscexec

SQL Server のホスト コンピューターのローカル管理者アカウント

mydomain\sqladmin

SQL Server サービスを実行するために使用される SQL Server サービス アカウント

mydomain\wsssqlsvc

SharePoint Foundation 2010 のファーム管理者アカウント

mydomain\wssfarmadmin

これは、サーバーの全体管理のアプリケーション プール ID、および SharePoint Timer Service のサービス アカウントとして使用されます。

ポータル サイト Web アプリケーションの SharePoint Foundation 2010 アプリケーション プール ID

mydomain\portalpool

個人用サイト Web アプリケーションの SharePoint Foundation 2010 アプリケーション プール ID

mydomain\mysitepool

SharePoint Foundation 2010 Search Service アカウント

mydomain\wsssearch

SharePoint Foundation 2010 Search コンテンツ アクセス アカウント

mydomain\wsscrawl

SharePoint Foundation 2010 Search Service アカウント

mydomain\wsssearch

SharePoint Foundation 2010 コンテンツ アクセス アカウント

mydomain\wsscrawl

準備段階の構成要件

サーバー ファーム内のコンピューターに SharePoint Foundation 2010 をインストールする前に、次の手順を実行済みであることを確認します。

  • SQL ホストを含む、ファームで使用されるすべてのサーバーは、Windows Update サイト (https://go.microsoft.com/fwlink/?linkid=101614&clcid=0x411) から最新の更新プログラムを適用した Windows Server 2008 を使用してセットアップされている。

  • ファーム内のすべてのサーバーには、Windows Update サイト (https://go.microsoft.com/fwlink/?linkid=101614&clcid=0x411) から Internet Explorer (および最新の更新プログラム) がインストールされている。

  • SQL Server 2008 が SQL ホスト コンピューターにインストールされ実行されている。また、SQL Server サービスがアカウント mydomain\sqlsvc として実行されている。SQL Server の既定のインスタンスがインストールされ、TCP ポート 1433 でリッスンしている。

  • SharePoint 製品構成ウィザードを実行するユーザーが次のように追加されている。

    • SQL ホストで SQL ログインとして追加。

    • SQL ホストの SQL Server DBCreators ロールに追加。

    • SQL ホストの SQL Server Security Administrators ロールに追加。

SQL 通信の Kerberos 認証を構成する

SharePoint Foundation 2010 を実行するサーバーに SharePoint Foundation 2010 をインストールして構成する前に、SQL 通信の Kerberos 認証を構成する必要があります。SharePoint Foundation 2010 を実行するコンピューターが SQL サーバーに接続できるようにするには、SQL 通信の Kerberos 認証を構成し、機能することを確認する必要があるためです。

Windows Server 2008 を実行しているホスト コンピューターにインストールされている任意のサービスに対して Kerberos 認証を構成するプロセスには、ホストでサービスを実行するために使用されるドメイン アカウントに対して SPN を作成することが含まれます。SPN は次のパーツで構成されます。

  • サービス名 (たとえば、MSSQLSvc または HTTP)

  • (実際または仮想の) ホスト名

  • ポート番号

次の一覧には、mosssql というコンピューターで実行され、ポート 1433 でリッスンしている SQL Server の既定のインスタンスでの SPN の例が含まれています。

  • MSSQLSvc/wsssql:1433

  • MSSQLSvc/wsssql.mydomain.com:1433

これらの SPN は、この記事で示すファームで使用される SQL ホスト上で SQL Server のインスタンス用に作成します。ネットワークのホストに対して、必ず NetBIOS 名と完全な DNS 名の両方を持つ SPN を作成する必要があります。

Active Directory ドメインでアカウントに SPN を設定するには、さまざまな方法を使用できます。1 つの方法は、Windows Server 2008 のリソース キット ツールに含まれている SETSPN.EXE ユーティリティを使用する方法です。別の方法として、Active Directory ドメイン コントローラーで ADSIEDIT.MSC スナップインを使用することもできます。この記事では、ADSIEDIT.MSC スナップインの使用について説明します。

SQL Server で Kerberos 認証を構成するためには、次の 2 つの主要な手順があります。

  • SQL Server サービス アカウントの SPN を作成します。

  • SharePoint Foundation 2010 を実行しているサーバーを、SQL Server を実行しているサーバーに接続するために、Kerberos 認証が使用されていることを確認します。

SQL Server サービス アカウントの SPN を作成する

  1. ドメイン管理者権限を持つユーザーの資格情報を使用して、Active Directory ドメイン コントローラーにログオンします。

  2. [実行] ダイアログ ボックスに「ADSIEDIT.MSC」と入力します。

  3. 管理コンソールのダイアログ ボックスで、ドメイン コンテナーのフォルダーを展開します。

  4. ユーザー アカウントを含むコンテナー (たとえば CN=Users) を展開します。

  5. SQL Server サービス アカウントのコンテナー (たとえば CN=mosssqlsvc) を見つけます。

  6. そのアカウントを右クリックし、[プロパティ] をクリックします。

  7. [SQL Server サービス アカウント] ダイアログ ボックスでプロパティの一覧を下にスクロールし、[servicePrincipalName] を見つけます。

  8. [servicePrincipalName] プロパティを選択し、[編集] をクリックします。

  9. [複数値の文字列エディター] ダイアログ ボックスの [追加する値] フィールドに、SPN の「MSSQLSvc/wsssql:1433」を入力し、[追加] をクリックします。次に、このフィールドに SPN の「MSSQLSvc/wsssql.mydomain.com:1433」を入力し、[追加] をクリックします。

  10. [Multi-valued String Editor] ダイアログ ボックスで [OK] をクリックし、SQL Server サービス アカウントのプロパティのダイアログ ボックスで [OK] をクリックします。

SharePoint Foundation 2010 を実行しているサーバーを SQL Server に接続するために Kerberos 認証が使用されていることを確認する

SharePoint Foundation 2010 を実行しているサーバーのいずれかに SQL クライアント ツールをインストールし、それらのツールを使用して、SharePoint Foundation 2010 を実行しているサーバーから、SQL Server を実行しているサーバーに接続します。この記事では、SharePoint Foundation 2010 を実行しているサーバーへの SQL クライアント ツールのインストール手順については説明しません。確認の手順は、次の前提事項に基づいています。

  • SQL ホストで SQL Server 2008 を使用している。

  • アカウント mydomain\pscexec を使用し、SharePoint Foundation 2010 を実行しているいずれかのサーバーにログインしている。SharePoint Foundation 2010 を実行しているサーバーには、SQL 2005 クライアント ツールをインストール済みである。

  1. SQL Server 2005 Management Studio を実行します。

  2. [サーバーに接続] ダイアログ ボックスが表示されたら、SQL ホスト コンピューターの名前 (この例では、SQL ホスト コンピューターは wsssql) を入力し、[接続] をクリックして SQL ホスト コンピューターに接続します。

  3. この接続に Kerberos 認証が使用されたことを確認するため、SQL ホスト コンピューターでイベント ビューアーを実行してセキュリティ イベント ログを検査します。次の表に示すデータに類似した [ログオン/ログオフ] という分類のイベントの監査成功レコードが表示されます。

    イベントの種類

    成功の監査

    イベントのソース

    セキュリティ

    イベントの分類

    ログオン/ログオフ

    イベント ID

    540

    日付

    10/31/2007

    時刻

    4:12:24 PM

    ユーザー

    MYDOMAIN\pscexec

    コンピューター

    WSSQL

    説明

    以下の表は、成功したネットワーク ログオンの例を示しています。

    ユーザー名

    pscexec

    ドメイン

    MYDOMAIN

    ログオン ID

    (0x0,0x6F1AC9)

    ログオンの種類

    3

    ログオン プロセス

    Kerberos

    ワークステーション名

    ログオン GUID

    {36d6fbe0-2cb8-916c-4fee-4b02b0d3f0fb}

    呼び出し側ユーザー名

    呼び出し側ドメイン

    呼び出し側ログオン ID

    呼び出し側プロセス ID

    移行されたサービス

    ソース ネットワーク アドレス

    192.168.100.100

    ソース ポート

    2465

ログ エントリを検査して、次のことを確認します。

  1. ユーザー名が正しいこと。mydomain\pscexec アカウントがネットワーク経由で SQL ホストにログオンしたこと。

  2. ログオンの種類が 3 であること。種類 3 のログオンはネットワーク ログオンです。

  3. ログオン プロセスおよび認証パッケージの両方で Kerberos 認証を使用していること。これにより、SharePoint Foundation 2010 を実行しているサーバーが、SQL ホストと通信するために Kerberos 認証を使用していることを確認できます。

  4. ソース ネットワーク アドレスが、接続元のコンピューターの IP アドレスと一致すること。

"SSPI コンテキストを生成できません" のようなエラー メッセージが表示されて SQL ホストへの接続が失敗する場合、SQL Server のインスタンスに使用されている SPN に問題がある可能性があります。この問題のトラブルシューティングと修正の方法については、マイクロソフト サポート技術情報の記事「"SSPI コンテキストを生成できません" エラー メッセージのトラブルシューティング方法」(https://go.microsoft.com/fwlink/?linkid=76621&clcid=0x411) を参照してください。

Kerberos 認証を使用して Web アプリケーションのサービス プリンシパル名を作成する

Kerberos 認証に関して、IIS ベースの SharePoint Foundation 2010 Web アプリケーションに特別なことはありません。Kerberos 認証では、それらのアプリケーションは単に IIS Web サイトとして扱われます。

この手順では、次の情報が必要です。

  • SPN のサービス クラス (この記事では、SharePoint Foundation 2010 Web アプリケーションの場合、常に HTTP となります)。

  • Kerberos 認証を使用するすべての SharePoint Foundation 2010 Web アプリケーションの URL。

  • SPN のホスト名部分 (実際名または仮想名。この記事では両方について説明します)。

  • SPN のポート番号部分 (この記事で説明するシナリオでは、IIS ポート ベースおよび IIS ホスト ヘッダー ベースの両方の SharePoint Foundation 2010 Web アプリケーションが使用されます)。

  • SPN を作成する Windows Active Directory アカウント。

次の表は、この記事のシナリオの情報を示しています。

URL Active Directory アカウント SPN

http://wssadmin.mydomain.net:10000

wssfarmadmin

  • HTTP/wssadmin.mydomain.net:10000

  • HTTP/wssadmin.mydomain.net:10000

http://kerbportal.mydomain.net

portalpool

  • HTTP/kerbportal.mydomain.net

  • HTTP/kerbportal

http://kerbmysite.mydomain.net

mysitepool

  • HTTP/kerbmysite.mydomain.net

  • HTTP/kerbmysite

この表に関するメモ:

  • この表の最初の URL はサーバーの全体管理用であり、ポート番号が使用されます。ポート 10000 を使用する必要はありません。これは、この記事で一貫して使用する例にすぎません。

  • その後の 2 つの URL はそれぞれポータル サイト用および個人用サイト用です。

このガイダンスを使用して、SharePoint Foundation 2010 Web アプリケーションで Kerberos 認証をサポートするために AD DS で必要な SPN を作成します。ドメインの管理者権限を持っているアカウントを使用して、環境のドメイン コントローラーにログオンする必要があります。SPN を作成するには、前に説明した SETSPN.EXE ユーティリティまたは ADSIEDIT.MSC スナップインを使用します。ADSIEDIT.MSC スナップインを使用する場合は、SPN の作成に関してこの記事で前に説明した手順を参照してください。AD DS の各アカウントに対して、確実に正しい SPN を作成してください。

サーバー ファームを展開する

サーバー ファームの展開には、次の手順が含まれます。

  1. SharePoint Foundation 2010 を実行しているすべてのサーバーで、SharePoint Foundation 2010 をセットアップします。

  2. SharePoint 製品構成ウィザードを実行して新しいファームを作成します。この手順には、既定以外のポートにバインドされ、Kerberos 認証を使用する IIS 仮想サーバー上にホストされる SharePoint Foundation 2010 サーバーの全体管理 Web アプリケーションの作成が含まれます。

  3. SharePoint 製品構成ウィザードを実行し、他のサーバーをファームに参加させます。

  4. 次のものに対して、ファーム内のサーバーのサービスを構成します。

    • SharePoint Foundation 2010 Search service

    • SharePoint Foundation 2010 検索インデックス処理

    • SharePoint Foundation 2010 検索クエリ

  5. Kerberos 認証を使用して、ポータル サイトおよび個人用サイトに使用される Web アプリケーションを作成します。

  6. ポータル サイト Web アプリケーションで、グループ作業ポータル テンプレートを使用してサイト コレクションを作成します。

  7. Kerberos 認証を使用して Web アプリケーションに正しく接続できることを確認します。

  8. 検索インデックスが正常に機能することを確認します。

  9. 検索クエリが正常に機能することを確認します。

すべてのサーバーに SharePoint Foundation 2010 をインストールする

これは、SharePoint Foundation 2010 セットアップを実行して、SharePoint Foundation 2010 を実行しているサーバーに SharePoint Foundation 2010 バイナリをインストールする単純なプロセスです。アカウント mydomain\pscexec を使用して、SharePoint Foundation 2010 を実行しているそれぞれのコンピューターにログオンします。これに関する詳細な手順は示しません。この記事に示すシナリオでは、SharePoint Foundation 2010 を必要とするすべてのサーバーで、SharePoint Foundation 2010 の [完全] インストールを実行します。

新しいファームを作成する

この記事に示すシナリオでは、最初に WSSADMIN 検索インデックス サーバーから SharePoint 製品構成ウィザードを実行して、WSSADMIN が SharePoint Foundation 2010 サーバーの全体管理 Web アプリケーションをホストするようにします。

WSSCRAWL サーバーでセットアップが完了すると、SharePoint 製品構成ウィザードを実行するチェック ボックスがオンになった状態で、[セットアップ完了] ダイアログ ボックスが表示されます。このチェック ボックスはオンのままにし、セットアップのダイアログ ボックスを閉じて SharePoint 製品構成ウィザードを実行します。

このコンピューターで SharePoint 製品構成ウィザードを実行するときは、次の設定を使用して新しいファームを作成するようにウィザードで指定します。

  • データベース サーバー名を指定します (この記事では、WSSSQL というサーバー名)。

  • 構成データベース名を指定します (既定値を使用するか、選択する名前を指定します)。

  • データベース アクセス (ファーム管理者) アカウントの情報を指定します。この記事のシナリオでは、このアカウントは mydomain\wssfarmadmin です。

  • SharePoint Foundation 2010 サーバーの全体管理 Web アプリケーションに必要な情報を指定します。この記事のシナリオでは、この情報は次のとおりです。

    • サーバーの全体管理 Web アプリケーションのポート番号: 10000

    • 認証方法: ネゴシエート

必要な情報をすべて指定すると、SharePoint 製品構成ウィザードは正常に終了します。正常に終了した場合は、Kerberos 認証を使用して、SharePoint Foundation 2010 サーバーの全体管理 Web アプリケーションのホーム ページにアクセスできることを確認します。そのためには、次の手順を実行します。

  1. SharePoint Foundation 2010 を実行している別のサーバーにログオンするか、またはドメイン mydomain の別のコンピューターに mydomain\pscexec としてログオンします。SharePoint Foundation 2010 サーバーの全体管理 Web アプリケーションをホストしているコンピューターでは、Kerberos 認証の動作が正しいことを直接確認しないでください。この操作は、ドメイン内の別のコンピューターから行います。

  2. このサーバーで Internet Explorer を起動し、http://wssadmin.mydomain.net:10000 という URL への移動を試みます。サーバーの全体管理のホーム ページが表示されます。

  3. サーバーの全体管理へのアクセスに Kerberos 認証が使用されたことを確認するには、WSSADMIN という名前のコンピューターに戻り、イベント ビューアーを実行して、セキュリティ ログを参照します。次の表に示すデータと類似した監査成功レコードが表示されます。

    イベントの種類

    成功の監査

    イベントのソース

    セキュリティ

    イベントの分類

    ログオン/ログオフ

    イベント ID

    540

    日付

    11/1/2007

    時刻

    2:22:20 PM

    ユーザー

    MYDOMAIN\pscexec

    コンピューター

    WSSADMIN

    説明

    以下の表は、成功したネットワーク ログオンの例を示しています。

    ユーザー名

    pscexec

    ドメイン

    MYDOMAIN

    ログオン ID

    (0x0,0x1D339D3)

    ログオンの種類

    3

    ログオン プロセス

    Kerberos

    認証パッケージ

    Kerberos

    ワークステーション名

    ログオン GUID

    {fad7cb69-21f8-171b-851b-3e0dbf1bdc79}

    呼び出し側ユーザー名

    呼び出し側ドメイン

    呼び出し側ログオン ID

    呼び出し側プロセス ID

    移行されたサービス

    ソース ネットワーク アドレス

    192.168.100.100

    ソース ポート

    2505

このログ レコードには、前のログ エントリと同じ種類の情報が示されます。

  • ユーザー名が正しいことを確認します。このユーザーは、サーバーの全体管理をホストしている SharePoint Foundation 2010 を実行しているサーバーに、ネットワーク経由でログオンしている mydomain\pscexec アカウントです。

  • ログオンの種類が 3 であることを確認します。ログオンの種類 3 は、ネットワーク ログオンです。

  • ログオン プロセスと認証パッケージの両方で Kerberos 認証が使用されていることを確認します。これにより、サーバーの全体管理 Web アプリケーションにアクセスするために Kerberos 認証が使用されていることを確認できます。

  • ソース ネットワーク アドレスが接続元のコンピューターの IP アドレスと一致していることを確認します。

サーバーの全体管理ホーム ページが表示されず、代わりに "未承認" というエラー メッセージが表示される場合、Kerberos 認証は失敗しています。通常、このエラーの原因となるのは、次の 2 つだけです。

  • AD DS の SPN が正しいアカウントに対して登録されていません。SPN は、mydomain\wssfarmadmin に対して登録されている必要があります。

  • AD DS の SPN が、Internet Explorer によって構築される SPN に一致していないか無効です。または、AD DS に登録した SPN でポート番号を省略した可能性があります。この問題を修正し、Kerberos 認証を使用してサーバーの全体管理サイトが機能するようにしてから、以降の手順に進んでください。

注意

ネットワークで何が発生しているのかを診断し、サーバーの全体管理への参照のトレースを行うには、Microsoft ネットワーク モニターなどのネットワーク スニファーが役立ちます。エラーが発生したら、トレースを検査し、KerberosV5 プロトコル パケットを検索します。次に、Internet Explorer によって構築された SPN を含むパケットを検索します。トレースの SPN に問題がないように見える場合は、AD DS の SPN が無効であるか、正しくないアカウントに対して登録されています。

その他のサーバーをファームに参加させる

この時点で、ファームが作成され、Kerberos 認証を使用してサーバーの全体管理に正しくアクセスできるようになったので、SharePoint 製品構成ウィザードを実行して、他のサーバーをファームに参加させる必要があります。

SharePoint Foundation 2010 を実行している他の 4 台のサーバー (wssfe1、wssfe2、wssquery、および wsscrawl) のそれぞれで、SharePoint Foundation 2010 のインストールを完了すると、SharePoint 製品構成ウィザードのチェック ボックスがオンになった状態で、セットアップ完了のダイアログ ボックスが表示されます。このチェック ボックスをオンにしたまま、セットアップ完了のダイアログ ボックスを閉じて SharePoint 製品構成ウィザードを実行します。ファームに参加させる各サーバーで、この手順を実行します。

ファームに追加する各サーバーで SharePoint 製品構成ウィザードを完了したら、各サーバーが、サーバー WSSADMIN を実行しているサーバーの全体管理を表示できることを確認します。これらのサーバーのいずれかがサーバーの全体管理を表示できない場合は、適切な手順を実行して問題を解決してから、以降の手順に進んでください。

ファーム内のサーバーのサービスを構成する

以下のセクションに示すアカウントを使用して、特定の SharePoint Foundation 2010 サービスが、SharePoint Foundation 2010 を実行している特定のサーバーで実行されるように構成します。

注意

ここでは、ユーザー インターフェイスの詳細については説明しません。高度な指示のみ提供します。サーバーの全体管理、および必要な手順の実行方法を十分に理解してから、次に進んでください。

指定されたアカウントを使用してサーバーの全体管理にアクセスし、次の手順を実行して、指定されたサーバーのサービスを構成します。

サーバーの全体管理の [サーバーのサービス] ページで、次の操作を実行します。

  1. WSSQUERY サーバーを選択します。

  2. 表示されるサービスの一覧で、ページの中央付近にある SharePoint Foundation 2010 Search Service を見つけ、[操作] 列の [開始] をクリックします。

  3. 後続のページで、SharePoint Foundation 2010 Search Service アカウントおよび SharePoint Foundation 2010 コンテンツ アクセス アカウントの資格情報を入力します。この記事のシナリオでは、SharePoint Foundation 2010 Search Service アカウントは mydomain\wsssearch であり、SharePoint Foundation 2010 コンテンツ アクセス アカウントは mydomain\wsscrawl です。ページの適切な場所にアカウント名とパスワードを入力し、[開始] をクリックします。

インデックス サーバー

サーバーの全体管理の [サーバーのサービス] ページで、次の操作を実行します。

  1. WSSCRAWL サーバーを選択します。

  2. ページの中央付近に表示されるサービスの一覧で、SharePoint Foundation 2010 Search Service を見つけ、[操作] 列の [開始] をクリックします。

後続のページで、[このサーバーを使用してコンテンツにインデックスを付ける] チェック ボックスをオンにし、SharePoint Foundation 2010 Search Service アカウントの資格情報を入力します。この記事のシナリオでは、SharePoint Foundation 2010 Search Service アカウントは mydomain\wsssearch です。ページの適切な場所にアカウント名とパスワードを入力し、[開始] をクリックします。

クエリ サーバー

サーバーの全体管理の [サーバーのサービス] ページで、次の操作を実行します。

  1. WSSQUERY サーバーを選択します。

  2. 表示されるサービスの一覧で、ページの中央付近にある SharePoint Foundation 2010 Search Service を見つけ、[サービス] 列のサービス名をクリックします。

後続のページで、[このサーバーを使用して検索クエリ サービスを提供する] チェック ボックスをオンにし、[OK] をクリックします。

Kerberos 認証を使用して Web アプリケーションを作成する

ここでは、ファーム内のポータル サイトおよび個人用サイトで使用される Web アプリケーションを作成します。

注意

ここでは、ユーザー インターフェイスの詳細については説明しません。高度な指示のみ提供します。サーバーの全体管理、および必要な手順の実行方法を十分に理解してから、次に進んでください。

ポータル サイト Web アプリケーションを作成する

  1. サーバーの全体管理の [アプリケーション構成の管理] ページで、[Web アプリケーションの作成または拡張] をクリックします。

  2. 以降のページで、[新しい Web アプリケーションの作成] をクリックします。

  3. 以降のページで、[新しい IIS Web サイトを作成する] が選択されていることを確認します。

    • [説明] フィールドに「PortalSite」と入力します。

    • [ポート] フィールドに「80」と入力します。

    • [ホスト ヘッダー] フィールドに「kerbportal.mydomain.net」と入力します。

  4. この Web アプリケーションの認証プロバイダーとして [ネゴシエート (Kerberos)] が選択されていることを確認します。

  5. この Web アプリケーションは既定領域に作成します。この Web アプリケーションの領域を変更しないでください。

  6. [新しいアプリケーション プールを作成する] が選択されていることを確認します。

    • [アプリケーション プール名] フィールドに「PortalAppPool」と入力します。

    • [構成可能] が選択されていることを確認します。[ユーザー名] フィールドに、アカウント「mydomain\portalpool」を入力します。

  7. [OK] をクリックします。

  8. Web アプリケーションが正しく作成されていることを確認します。

注意

SSL 接続を使用し、Web アプリケーションをポート 443 にバインドする場合、[ポート] フィールドに「443」と入力し、[新しい Web アプリケーションの作成] ページで [SSL (Secure Sockets Layer) の使用] を選択します。また、SSL ワイルドカード証明書をインストールする必要があります。SSL 用に構成された IIS Web サイトにバインドする IIS ホスト ヘッダーを使用する場合、SSL ワイルドカード証明書を使用する必要があります。IIS の SSL ホスト ヘッダーの詳細については、「Configuring SSL Host Headers (IIS 6.0) (英語)」(https://go.microsoft.com/fwlink/?linkid=111285&clcid=0x411) (英語) を参照してください。

個人用サイト Web アプリケーションを作成する

  1. サーバーの全体管理の [アプリケーション構成の管理] ページで、[Web アプリケーションの作成または拡張] をクリックします。

  2. 以降のページで、[新しい Web アプリケーションの作成] をクリックします。

  3. 以降のページで、[新しい IIS Web サイトを作成する] が選択されていることを確認します。

    • [説明] フィールドに「MySite」と入力します。

    • [ポート] フィールドに「80」と入力します。

    • [ホスト ヘッダー] フィールドに「kerbmysite.mydomain.net」と入力します。

  4. この Web アプリケーションの認証プロバイダーとして [ネゴシエート (Kerberos)] が選択されていることを確認します。

  5. この Web アプリケーションは既定領域に作成します。この Web アプリケーションの領域を変更しないでください。

  6. [新しいアプリケーション プールを作成する] が選択されていることを確認します。

    • [アプリケーション プール名] フィールドに「MySiteAppPool」と入力します。

    • [構成可能] が選択されていることを確認します。[ユーザー名] フィールドに、アカウント「mydomain\mysitepool」を入力します。

  7. [OK] をクリックします。

  8. Web アプリケーションが正しく作成されていることを確認します。

注意

SSL 接続を使用し、Web アプリケーションをポート 443 にバインドする場合、[ポート] フィールドに「443」と入力し、[新しい Web アプリケーションの作成] ページで [SSL (Secure Sockets Layer) の使用] を選択します。また、SSL ワイルドカード証明書をインストールする必要があります。SSL 用に構成された IIS Web サイトにバインドする IIS ホスト ヘッダーを使用する場合、SSL ワイルドカード証明書を使用する必要があります。IIS の SSL ホスト ヘッダーの詳細については、「Configuring SSL Host Headers (IIS 6.0) (英語)」(https://go.microsoft.com/fwlink/?linkid=111285&clcid=0x411) (英語) を参照してください。

ポータル サイトの Web アプリケーションでグループ作業ポータル テンプレートを使用してサイト コレクションを作成する

ここでは、この目的で作成した Web アプリケーションで、ポータル サイト上にサイト コレクションを作成します。

注意

ここでは、ユーザー インターフェイスの詳細については説明しません。高度な指示のみ提供します。サーバーの全体管理、および必要な手順の実行方法を十分に理解してから、次に進んでください。

  1. サーバーの全体管理の [アプリケーション構成の管理] ページで、[サイト コレクションの作成] をクリックします。

  2. 後続のページで、正しい Web アプリケーションを選択します。この記事では、[http://kerbportal.mydomain.net] を選択します。

  3. このサイト コレクションに使用するタイトルと説明を入力します。

  4. Web サイトのアドレスは変更しません。

  5. [テンプレートの選択] の [テンプレートの選択] で、[公開] タブをクリックし、[グループ作業ポータル] テンプレートを選択します。

  6. [サイト コレクションの管理者] に「mydomain\pscexec」と入力します。

  7. 使用するサイト コレクションの代理の管理者を指定します。

  8. [OK] をクリックします。

  9. ポータル サイト コレクションが正しく作成されたことを確認します。

Kerberos 認証を使用して Web アプリケーションに正しくアクセスできることを確認する

作成した Web アプリケーションに対して Kerberos 認証が機能していることを確認します。ポータル サイトを使用して操作を開始します。

そのためには、次の手順を実行します。

  1. NLB に対して mydomain\pscexec として構成されている 2 台のフロントエンド Web サーバーのどちらかではなく、SharePoint Foundation 2010 を実行しているサーバーにログオンします。Kerberos 認証を使用した負荷分散 Web サイトをホストしているコンピューターのいずれかでは、Kerberos 認証の動作が正しいことを直接検証しないでください。この操作は、ドメイン内の別のコンピューターから行います。

  2. この別のシステムで Internet Explorer を起動し、http://kerbportal.mydomain.net への移動を試みます。

Kerberos 認証されたポータル サイトのホーム ページが表示されます。

ポータル サイトへのアクセスに Kerberos 認証が使用されたことを確認するには、負荷分散フロントエンド Web サーバーのどちらかに移動し、イベント ビューアーを実行してセキュリティ ログを参照します。どちらかのフロントエンド Web サーバーで、次の表に示すデータと類似した監査成功レコードが表示されます。負荷分散要求を処理したシステムによっては、両方のフロントエンド Web サーバーでレコードの検索が必要になる場合があります。

イベントの種類

成功の監査

イベントのソース

セキュリティ

イベントの分類

ログオン/ログオフ

イベント ID

540

日付

11/1/2007

時刻

5:08:20 PM

ユーザー

MYDOMAIN\pscexec

コンピューター

wssfe1

説明

以下の表は、成功したネットワーク ログオンの例を示しています。

ユーザー名

pscexec

ドメイン

MYDOMAIN

ログオン ID

(0x0,0x1D339D3)

ログオンの種類

3

ログオン プロセス

Kerberos 認証

ワークステーション名

ログオン GUID

{fad7cb69-21f8-171b-851b-3e0dbf1bdc79}

呼び出し側ユーザー名

呼び出し側ドメイン

呼び出し側ログオン ID

呼び出し側プロセス ID

移行されたサービス

ソース ネットワーク アドレス

192.168.100.100

ソース ポート

2505

このログ レコードには、前のログ エントリと同じ種類の情報が示されます。

  • ユーザー名が正しいことを確認します。このユーザーは、ポータル サイトをホストしている SharePoint Foundation 2010 を実行するフロントエンド Web サーバーにネットワーク経由でログオンしている mydomain\pscexec アカウントです。

  • ログオンの種類が 3 であることを確認します。ログオンの種類 3 は、ネットワーク ログオンです。

  • ログオン プロセスと認証パッケージの両方で Kerberos 認証が使用されていることを確認します。これにより、ポータル サイトにアクセスするために Kerberos 認証が使用されていることを確認できます。

  • ソース ネットワーク アドレスが接続元のコンピューターの IP アドレスと一致していることを確認します。

ポータル サイトのホーム ページが表示されず、代わりに "未承認" というエラー メッセージが表示される場合、Kerberos 認証は失敗しています。通常、このエラーの原因となるのは、次の 2 つだけです。

  • AD DS の SPN が正しいアカウントに対して登録されていません。ポータル サイトの Web アプリケーションの場合、SPN は mydomain\portalpool に対して登録されている必要があります。

  • AD DS の SPN が、Internet Explorer によって構築される SPN に一致していないか、別の理由により無効です。この場合、明示的なポート番号のない IIS ホスト ヘッダーを使用しているので、AD DS に登録される SPN は、Web アプリケーションを展開したときに指定した IIS ホスト ヘッダーとは異なります。Kerberos 認証が機能するためには、この問題を修正する必要があります。

注意

ネットワークで何が発生しているのかを診断し、サーバーの全体管理への参照のトレースを行うには、Microsoft ネットワーク モニターなどのネットワーク スニファーが役立ちます。エラーが発生したら、トレースを検査し、KerberosV5 プロトコル パケットを検索します。次に、Internet Explorer によって構築された SPN を持つパケットを検索します。トレースの SPN に問題がないように見える場合は、AD DS の SPN が無効であるか、正しくないアカウントに対して登録されています。

ポータル サイトに対して Kerberos 認証が機能するようになったら、次の URL を使用して、Kerberos 認証された個人用サイトに移動します。

注意

初めて個人用サイトの URL にアクセスするときは、ログオンしたユーザーに対して SharePoint Foundation 2010 が個人用サイトを作成するまでに少し時間がかかります。ただし、処理は正常に行われ、そのユーザーの個人用サイト ページが表示されます。

通常はこれで正常に機能します。機能しない場合は、前のトラブルシューティング手順を参照してください。

検索インデックスが正しく機能していることを確認する

検索インデックスが、このファームにホストされているコンテンツを正しくクロールすることを確認します。これは、Kerberos 認証を使用してサイトにアクセスするユーザーに対する検索クエリ結果を確認する前に実行しておく必要がある手順です。

注意

ここでは、ユーザー インターフェイスの詳細については説明しません。高度な指示のみ提供します。サーバーの全体管理、および必要な手順の実行方法を十分に理解してから、次に進んでください。
検索インデックス処理を確認するには、Web アプリケーションにアクセスし、フル クロールを開始します。クロールが完了するまで待ちます。クロールに失敗した場合は、エラーを調査して修正し、フル クロールを実行します。"アクセスが拒否されました" エラーが表示されてクロールが失敗する場合は、クロール アカウントでコンテンツ ソースにアクセスできないか、Kerberos 認証が失敗したことが原因です。どのような原因であっても、このエラーを修正してから以降の手順に進んでください。

以降の手順に進む前に、Kerberos 認証された Web アプリケーションのフル クロールを実行する必要があります。

検索クエリが正しく機能していることを確認する

Kerberos 認証を使用するポータル サイトにアクセスするユーザーに対して、検索クエリで結果が返されるようにするには、次の手順を実行します。

  1. mydomain.net 内のシステムで Internet Explorer を起動し、http://kerbportal.mydomain.net に移動します。

  2. ポータル サイトのホーム ページが表示されたら、[検索] フィールドに検索キーワードを入力し、Enter キーを押します。

  3. 検索クエリ結果が返されることを確認します。結果が返されない場合は、入力したキーワードが展開で有効であること、検索インデックスが正しく実行されていること、Search Service が検索インデックス サーバーおよび検索クエリ サーバーで実行されていること、および検索インデックス サーバーから検索クエリ サーバーへの検索の伝達に問題がないことを確認します。

構成の制限

作成される新しい形式の SPN のホスト名部分は、サービスを実行しているホストの NetBIOS 名 (たとえば MSSP/kerbtest4:56738/SSP1) になります。これは、ホスト名が SharePoint Foundation 2010 構成データベースからフェッチされ、NetBIOS コンピューター名だけが SharePoint Foundation 2010 構成データベースに格納されるためです。これは、特定のシナリオではあいまいとなる可能性があります。

追加のリソースとトラブルシューティングのガイダンス

製品/テクノロジ リソース

SQL Server

SQL Server 2005 のインスタンスへのリモート接続を作成するときに、Kerberos 認証を使用していることを確認する方法 (https://go.microsoft.com/fwlink/?linkid=85942&clcid=0x411)

SQL Server

"SSPI コンテキストを生成できません" エラー メッセージのトラブルシューティング方法 (https://go.microsoft.com/fwlink/?linkid=82932&clcid=0x411)

.NET Framework

AuthenticationManager.CustomTargetNameDictionary プロパティ (https://go.microsoft.com/fwlink/?linkid=120460&clcid=0x411)

Internet Explorer

Internet Explorer の Windows XP ベースのコンピューターで Kerberos 認証を必要とする Web サイトにアクセスしようとするとエラー メッセージ:"エラー HTTP 401 - 権限がありません: 資格情報が無効であるため、アクセスが拒否されました" (https://go.microsoft.com/fwlink/?linkid=120462&clcid=0x411)

Kerberos 認証

Kerberos Authentication Technical Reference (英語) (https://go.microsoft.com/fwlink/?linkid=78646&clcid=0x411) (英語)

Kerberos 認証

Troubleshooting Kerberos Errors (英語) (https://go.microsoft.com/fwlink/?linkid=93730&clcid=0x411) (英語)

Kerberos 認証

Microsoft Windows Server 2003: Kerberos のプロトコル遷移と制約付き委任 (https://go.microsoft.com/fwlink/?linkid=100941&clcid=0x411)

IIS

Configuring SSL Host Headers (IIS 6.0) (英語) (https://go.microsoft.com/fwlink/?linkid=120463&clcid=0x411) (英語)