Business Connectivity Services の ID 委任 (SharePoint Server 2010)

 

適用先: SharePoint Server 2010

トピックの最終更新日: 2016-11-30

このシナリオでは、Business Data Connectivity Service アプリケーションを構成し、Kerberos 制約付き委任を使用して SQL Server で認証します。一度構成されたら、新しい外部コンテンツ タイプと外部リストを作成して認証をテストし、SharePoint サイト内で操作を読み取ります。

このシナリオでは、SharePoint Server ファームと BCS データ ソースが同じドメイン内にあるので、バックエンド データ ソースへの ID 委任を許可するように Kerberos 制限付き委任を構成します。同じフォレスト内の他のドメインのデータ ソースで認証する必要がある場合は、基本 (制限なし) Kerberos 委任を構成する必要があります。BCS では C2WTS は使用されていないので、基本委任を使用できます。

注意

Windows Server 2008 にインストールする場合は、Kerberos 認証用に次の修正プログラムのインストールが必要になる可能性があります。
Kerberos 認証は 0X80090302 または 0x8009030f、AES アルゴリズムが使用するとき Windows Server 2008 や Windows Vista を実行がコンピューターには、エラー コードと共に失敗します。 (https://support.microsoft.com/kb/969083/ja-jp)

シナリオの依存関係

このシナリオを完了するには、以下をすでに完了している必要があります。

構成チェックリスト

構成の領域 説明

Active Directory の構成

BCS アプリケーション サービス アカウントを作成する

サービス プリンシパル名を確認する

委任を構成する

SharePoint Server の構成

BCS サービス インスタンスを開始する

BCS サービス アプリケーションを作成する

検証

BCS 外部コンテンツ タイプを作成する

BCS セキュリティを構成する

BCS 外部リストを作成する

ブラウザーで外部リストを開く

シナリオ環境の詳細

認証プロセスの図 委任プロセスの図

構成手順

Active Directory の構成

BCS アプリケーション サービス アカウントを作成する

ベスト プラクティスとして、Business Connectivity Service は、独自のドメイン ID で実行する必要があります。BCS アプリケーションを構成するには、Active Directory アカウントを作成する必要があります。この例では、次のアカウントが作成されました。

SharePoint Server サービス IIS App プール ID

Business Connectivity Service

vmlab\svcBDC

サービス プリンシパル名を確認する

BCS 外部コンテンツ タイプは、BCS データが SharePoint サイトで使用されているときに、ECT タイプを使用して IIS アプリケーション プールのコンテキスト内で実行されます。Kerberos 認証を使用して BCS が外部データ ソースに接続し認証できるように、IIS アプリケーション プールのサービス アカウントと外部データ ソースのサービス アカウントでは、サービス プリンシパル名が構成されている必要があります。必要な SPN を Web アプリケーションと SQL Server サービス アカウントで構成して検証する場合は、このドキュメントのシナリオ 1 と 2 を参照してください。

委任を構成する

BCS がクライアントの ID を委任できるようにするには、Kerberos 委任が構成されていなければなりません。Excel Services のように、制限付き委任は理論的には必要ありませんが、BCS に対して制限なし委任を使用できるので、サービスで実行できる委任の範囲には制限を適用するのがベスト プラクティスです。したがって、この例では、制限付き委任が構成されます。

ECT が実行されているサイトをホストする各 IIS アプリケーション プールのサービス アカウントを、バックエンド サービスに対して委任を許可するように構成する必要があります。

この例では、次の委任パスが必要です。

プリンシパルの種類 プリンシパル名 サービスへの委任

ユーザー

svcPortal10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

ユーザー

svcTeams10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

制限付き委任を構成するには

  1. Active Directory ユーザーとコンピューターで、Active Directory オブジェクトのプロパティを開きます。

  2. [委任] タブを表示します。

    SP2010 Kerberos Guide228.gif

  3. [指定されたサービスへの委任でのみこのユーザーを信頼する] を選択します。

    注意

    BCS での認証が、同じフォレスト内にありながら、SharePoint Server が存在するドメイン外のデータ ソースで行われるようにする必要がある場合は、[任意のサービスへの委任でこのコンピューターを信頼する] を選択して、制限付き委任ではなく基本委任を構成します。BCS 外部コンテンツ タイプは Web アプリケーションの IIS ワーカー プロセスで実行されます。このコンテンツ タイプでは、C2WTS は利用されません。クロス フォレスト Kerberos 委任を行うことはできないので注意してください。

  4. [追加] ボタンをクリックし、委任先のサービス プリンシパルを選択します。

  5. [ユーザーまたはコンピューター] を選択します。

  6. 委任するサービスを実行しているサービス アカウントを選択します。この例では、SQL Server サービスのサービス アカウントです。

    注意

    選択したサービス アカウントには、SPN が適用されている必要があります。この例では、このアカウントの SPN は以前のシナリオで構成済みです。

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

  8. 委任する SPN を選択し、[OK] をクリックします。

  9. SQL Server クラスターのサービスを選択し、[OK] をクリックします。

    これで、[このアカウントが委任された資格情報を提示できるサービス] リストに選択した SPN が表示されるはずです。

  10. このセクションですでに特定した各委任パスで、これらの手順を繰り返します。

SQL Server でサービスを実行しているサービス アカウントの MSSQLSVC SPN を確認する (シナリオ 2 で実行)

以下の SetSPN コマンドを持つ、Analysis Services サービス アカウント (vmlab\svcSQL) の SPN が存在することを確認してください。

SetSPN -L vmlab\svcSQL

以下のように表示されます。

MSSQLSVC/MySqlCluster

MSSQLSVC/MySqlCluster.vmlab.local:1433

SharePoint Server の構成

BCS サービス インスタンスを開始する

BCS サービス アプリケーションを作成する前に、割り当てられたファーム サーバーで BCS サービスを開始します。

  1. サーバーの全体管理を開きます。

  2. サービスで、[サーバーのサービスの管理] を選択します。

  3. 右上隅のサーバー選択ボックスで、Excel Services を実行中のサーバーを選択します。この例では VMSP10APP01 です。

  4. [Business Data Connectivity Service] サービスを開始します。

BCS サービス アプリケーションを作成する

次に、Web アプリケーションが BDC サービスを使用できるように、新しい BDC サービス アプリケーションとアプリケーション プロキシを構成します。

  1. サーバーの全体管理を開きます。

  2. [アプリケーション構成の管理] で [サービス アプリケーションの管理] を選択します。

  3. [新規作成]、[Business Data Connectivity Service] の順に選択します。

  4. 新しいサービス アプリケーションを構成します。必ず正しいサービス アカウントを選択してください (BDC サービス アカウントがリストにない場合は、新しい管理アカウントを作成します)。

検証

BCS 外部コンテンツ タイプを作成する

BDC を介して外部データにアクセスするには、BDC 外部コンテンツ タイプを作成する必要があります。この例では、SharePoint Designer 2010 を使用して、ポータル Web アプリケーション (http://portal) で外部コンテンツ タイプを作成します。

  1. SharePoint Designer 2010 を開きます。

  2. http://portal でテスト サイト コレクションを開きます。

  3. 左側のナビゲーションで、[外部コンテンツ タイプ] をクリックします。

  4. ページの左上隅で、リボンの [新規] セクションの [外部コンテンツ タイプ] を選択します。

  5. 外部コンテンツ タイプに表示名を付けます。

  6. 次に、[ここをクリックして、外部データソースの検出と操作の定義を行います] を選択します。

  7. [接続の追加] をクリックします。

  8. [データ ソースの種類] ドロップダウン リストの [SQL Server] を選択し、テスト データベースへの接続に必要な情報を追加します。[ユーザーの ID で接続] を選択して、委任をテストしてください。

  9. 新しい接続を展開します。テスト テーブルの [Sales] を右クリックし、[すべての操作を作成] を選択します。

  10. 定義されている一意の識別子がないというエラーが表示されます。識別子列を選択し、[識別子へのマップ] チェック ボックスをオンにします。[完了] をクリックして既定のオプションを受け入れ、ECT 操作を作成します。

  11. [保存] をクリック (または、Ctrl + S を使用) すると、ECT が BDC サービス アプリケーション メタデータ ストアに公開されます。

BCS セキュリティを構成する

クライアントがポータル Web アプリケーションで BCS 外部コンテンツ タイプを使用できるようにするには、BCS 権限を構成する必要があります。BCS では詳細な権限モデルがサポートされていますが、このデモではメタデータ ストア レベルでセキュリティを構成し、セキュリティの変更をストア内のすべてのオブジェクトに反映させます。

  1. サーバーの全体管理を開きます。

  2. [アプリケーション構成の管理] で [サービス アプリケーションの管理] を選択します。

  3. 新しいサービス アプリケーションのリンクをクリックします。この例では、[Business Data Services] をクリックします。

  4. [Metadata Store の権限の設定] を選択します。

  5. この例では、すべての権限を持つ Enterprise Admins、および [権限の設定] 権限以外のすべての権限を持つ All Authenticated Users を構成しました。

  6. [権限を伝達する] チェック ボックスがオンになっていることを確認し、[OK] をクリックして変更を保存します。

BCS 外部リストを作成する

外部コンテンツ タイプをテストするには、外部リストを構成して、ポータル アプリケーションに外部データを表示します。

  1. SharePoint Designer 2010 を開きます。

  2. http://portal でテスト サイト コレクションを開きます。

  3. 左側にある [外部コンテンツ タイプ] を選択します。

  4. これまでの手順で作成したコンテンツ タイプをクリックします。

  5. リボンで、[リストとフォームの作成] をクリックします。

  6. 外部コンテンツ タイプを保存するように求められたら、[はい] をクリックします。

  7. [リストとフォームの作成] ダイアログ ボックスで、[リスト名] テキスト ボックスにファイル名を入力し、[OK] をクリックします。

ブラウザーで外部リストを開く

  1. SharePoint Designer 2010 を開きます。

  2. http://portal でテスト サイト コレクションを開きます。

  3. 左側のナビゲーションで [リストとライブラリ] をクリックします。

  4. [リストとライブラリ] リストの一番下にある外部リストを選択します。

  5. [ブラウザーでプレビュー] をクリックします。

    Internet Explorer が開き、選択したサイトと外部リストが表示されます。

  6. 外部データが正しく表示されていることを検証します。接続をさらに詳しく検証するには、SQL Server Management Studio でソース データを変更し、ブラウザー ページを更新します。これにより、データの変更がブラウザーに反映されます。