次の方法で共有


リンク サーバーの委任用の構成

更新 : 2006 年 12 月 12 日

SQL Server と Windows の構成で、認証済みの Windows ユーザーの資格情報を転送することにより、ある SQL Server インスタンスに接続されたクライアントを別の SQL Server インスタンスに接続できるように指定することができます。このような処理は、委任と呼ばれます。委任では、ある Windows ユーザーが Windows 認証を使用して接続している SQL Server のインスタンスから別のインスタンスと通信する際に、そのユーザーの権限が借用されます。特定のリンク サーバーに対する特定のログインに自己マッピングを使用する場合、分散クエリにはセキュリティ アカウントの委任が必要になります。

委任の要件

委任の要件を理解するために、SQL Server のインスタンス SQLSERVER1 を実行しているサーバーに接続するクライアント コンピュータに、あるユーザーがログオンする、というシナリオを考えてみます。そのユーザーは、リンク サーバー SQLSERVER2 上で特定のデータベースに対して分散クエリを実行します。あるコンピュータを別のコンピュータに接続することで 3 番目のコンピュータに接続するこのシナリオは、ダブル ホップと呼ばれます。

ms189580.note(ja-jp,SQL.90).gifメモ :
サーバーに接続する SQL Server Management Studio などのクライアント アプリケーションが、クエリ対象の SQL Server インスタンスと同じコンピュータ上で実行されている場合でも、リンク サーバーは委任用に構成する必要があります。

クライアントの要件

  • ユーザーの Windows 認証済みログインは、SQLSERVER1SQLSERVER2 へのアクセス権を持っている必要があります。
  • ユーザーの Active Directory プロパティ [アカウントは重要なので委任できない] チェック ボックスはオフにしておいてください。
  • クライアント コンピュータで TCP/IP ネットワーク接続または名前付きパイプ ネットワーク接続を使用している必要があります。

1 番目/中間サーバー (SQLSERVER1) の要件

  • サーバーには、ドメイン管理者によって登録された SPN が必要です。

  • SQL Server を実行しているアカウントは、委任について信頼されている必要があります。

  • サーバーで TCP/IP ネットワーク接続または名前付きパイプ ネットワーク接続を使用している必要があります。

  • 2 番目のサーバー SQLSERVER2 はリンク サーバーとして追加する必要があります。この操作を行うには、sp_addlinkedserver ストアド プロシージャを実行します。次に例を示します。

    EXEC sp_addlinkedserver 'SQLSERVER2', N'SQL Server'
    
  • リンク サーバーのログインを自己マッピング用に構成しておく必要があります。この操作を行うには、sp_addlinkedsrvlogin ストアド プロシージャを実行します。次に例を示します。

    EXEC sp_addlinkedsrvlogin 'SQLSERVER2', 'true'
    

2 番目のサーバー (SQLSERVER2) の要件

  • TCP/IP ネットワーク接続を使用する場合、サーバーにはドメイン管理者によって登録された SPN が必要です。
  • サーバーで TCP/IP ネットワーク接続または名前付きパイプ ネットワーク接続を使用している必要があります。

参照

概念

サーバーのリンク

その他の技術情報

sp_addlinkedserver (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 7 月 17 日

変更内容 :
  • リンク サーバーを委任用に構成する際に、名前付きパイプ ネットワーク接続も使用できることを追加しました。

2006 年 7 月 17 日

新しい内容 :
  • サーバーに接続するクライアント アプリケーションが、クエリ対象の SQL Server インスタンスと同じコンピュータ上で実行されている場合でも、リンク サーバーを委任用に構成する必要があることを示す注記を追加しました。