サブスクライバーのセキュリティ保護
マージ エージェントとディストリビューション エージェントはサブスクライバーに接続します。 これらの接続は、SQL Server ログインまたは Windows ログインのコンテキスト下で行われます。 最低限必要な権限のみを与え、かつ、すべてのパスワードの格納を保護するという原則に従って、これらの各エージェントに対し適切なログインを提供することが重要です。 各エージェントに必要な権限の詳細については、「レプリケーション エージェントのセキュリティ モデル」を参照してください。
ディストリビューション エージェント
サブスクリプションごとに 1 つのディストリビューション エージェント (パブリケーションの新規作成ウィザードで既定で作成される独立したエージェント)、またはパブリケーション データベースとサブスクリプション データベースのペアごとに 1 つのディストリビューション エージェント (共有エージェント) があります。 T
プッシュ サブスクリプションの接続情報を指定するには、「プッシュ サブスクリプションの作成」を参照してください。
プル サブスクリプションの接続情報を指定するには「プル サブスクリプションの作成」を参照してください。
マージ エージェント
マージ サブスクリプションごとにマージ エージェントがあり、パブリッシャーとサブスクライバーの両方に接続し、更新します。
プッシュ サブスクリプションの接続情報を指定するには、「プッシュ サブスクリプションの作成」を参照してください。
プル サブスクリプションの接続情報を指定するには「プル サブスクリプションの作成」を参照してください。
即時更新サブスクリプション
即時更新サブスクリプションを構成する場合は、パブリッシャーに接続する際のアカウントをサブスクライバーで指定します。 サブスクライバーで起動され、パブリッシャーに変更を反映するトリガーが接続を使用します。 接続の種類については 3 つのオプションがあります。
レプリケーションが作成するリンク サーバー。構成時に指定した資格情報を使用して接続が行われます。
レプリケーションが作成するリンク サーバー。サブスクライバーで変更を行うユーザーの資格情報を使用して接続が行われます。
定義済みのリンク サーバーまたはリモート サーバー。
重要 |
---|
接続情報を指定するには、ストアド プロシージャ sp_link_publication (Transact-SQL) を使用します。 サブスクリプションの新規作成ウィザードの [更新可能なサブスクリプション用のログイン] を使用して、sp_link_publication を呼び出すこともできます。 特定の条件下で、サブスクライバーが SQL Server 2005 Service Pack 1 (SP1) 以降を実行し、パブリッシャーがそれよりも前のバージョンを実行している場合、このストアド プロシージャは失敗する可能性があります。 このシナリオでストアド プロシージャが失敗する場合は、パブリッシャーを SQL Server 2005 SP1 以降にアップグレードしてください。 |
詳細については、「トランザクション パブリケーションの更新可能なサブスクリプションの作成」および「レプリケーションのセキュリティ設定の表示および変更」を参照してください。
重要 |
---|
接続用に指定するアカウントには、レプリケーションによってパブリケーション データベース内に作成されるビューのデータの挿入、更新、および削除だけを実行できる権限を与える必要があります。それ以外の権限は与えないでください。 各サブスクライバーで構成したアカウントに、syncobj_<HexadecimalNumber> の形式で名前が指定されたパブリケーション データベース内のビューに対する権限を与えます。 |
キュー更新サブスクリプション
キュー更新サブスクリプションを構成する際には、セキュリティに関して、以下の 2 点に注意してください。
各ディストリビューターには、キュー リーダー エージェントが 1 つしかありません。 ディストリビューターごとに、キュー更新サブスクリプションを有効にしたパブリケーションを 1 つだけ構成することをお勧めします。
キュー リーダー エージェントは、ディストリビューター、パブリッシャー、および各サブスクライバーに接続します。
エージェントの実行とディストリビューターへの接続で使用するアカウントは、エージェントを作成する際に指定します (パブリケーションの新規作成ウィザードを使用する場合は、更新サブスクリプションを有効にしたパブリケーションを作成する際にエージェントが作成されます)。
エージェントがパブリッシャーに接続する際に使用するアカウントは、パブリッシャーのディストリビューションを構成する際に指定します。 エージェントの実行で使用する Windows アカウントか SQL Server アカウントを指定してください。
エージェントがサブスクライバーに接続する際に使用するアカウントは、サブスクリプションを作成する際に指定します。
重要 サブスクライバーへの接続には SQL Server 認証を使用し、各サブスクライバーへの接続にはそれぞれ異なるアカウントを指定してください。 プル サブスクリプションを使用する場合は、レプリケーションによって、常に Windows 認証を使用するように接続が設定されます (プル サブスクリプションでは、SQL Server 認証が必要なサブスクライバーのメタデータにレプリケーションからアクセスすることはできません)。 その場合、サブスクリプションを構成した後に、接続で SQL Server 認証を使用するように変更してください。
詳細については、「トランザクション パブリケーションに対して更新可能なサブスクリプションを作成する方法 (SQL Server Management Studio)」および「レプリケーションのセキュリティ設定の表示および変更」を参照してください。
関連項目
概念
データベース エンジンへの暗号化接続の有効化 (SQL Server 構成マネージャー)