認証とは、エンティティ (通常、このコンテキスト内のコンピューター) が、 プリンシパルとも呼ばれる別のエンティティ (通常は別のコンピューターまたはユーザー) が誰であるか、または何であるかを検証するプロセスです。 承認とは、認証されたプリンシパルに、ファイル システム内のファイルやデータベース内のテーブルなどのリソースへのアクセス権を付与するプロセスです。
レプリケーション セキュリティでは、認証と承認を使用して、レプリケートされたデータベース オブジェクト、およびレプリケーション処理に関係するコンピューターとエージェントへのアクセスを制御します。 これは、次の 3 つのメカニズムによって実現されます。
エージェント セキュリティ: レプリケーション エージェントのセキュリティ モデルを使用すると、レプリケーション エージェントを実行して接続するアカウントをきめ細かく制御できます。 エージェント セキュリティ モデルの詳細については、「 レプリケーション エージェント セキュリティ モデル」を参照してください。 エージェントのログインとパスワードの設定については、「 レプリケーションでのログインとパスワードの管理」を参照してください。
管理ロール: レプリケーションのセットアップ、メンテナンス、および処理に正しいサーバーロールとデータベース ロールが使用されていることを確認します。 詳細については、「 レプリケーションのセキュリティ ロールの要件」を参照してください。
パブリケーション アクセス リスト (PAL): PAL を介してパブリケーションへのアクセスを許可します。 PAL は、Microsoft Windows のアクセス制御リストと同様に機能します。 サブスクライバーがパブリッシャーまたはディストリビューターに接続し、パブリケーションへのアクセスを要求すると、エージェントによって渡された認証情報が PAL に対してチェックされます。 PAL の詳細とベスト プラクティスについては、「 パブリッシャーのセキュリティ保護」を参照してください。
パブリッシュされたデータのフィルター処理
レプリケーションには、認証と承認を使用してレプリケートされたデータとオブジェクトへのアクセスを制御するだけでなく、サブスクライバーで使用できるデータを制御するための 2 つのオプション (列のフィルター処理と行のフィルター処理) が含まれています。 フィルター処理の詳細については、「 パブリッシュされたデータのフィルター処理」を参照してください。
アーティクルを定義する場合は、パブリケーションに必要な列のみを発行し、不要な列や機密データが含まれている列を省略できます。 たとえば、Adventure Works データベースからフィールドの営業担当者に Customer テーブルを発行する場合、 AnnualSales 列を省略できます。これは会社の役員にのみ関連する可能性があります。
パブリッシュされたデータをフィルター処理すると、データへのアクセスを制限でき、サブスクライバーで使用できるデータを指定できます。 たとえば、企業パートナーが ShareInfo 列の値が "yes" の顧客に関する情報のみを受け取るように、Customer テーブルをフィルター処理できます。マージ レプリケーションでは、HOST_NAME() を含むパラメーター化されたフィルターを使用する場合、セキュリティに関する考慮事項があります。 詳細については、「 パラメーター化された行フィルター」の「HOST_NAME()」セクションを参照してください。
レプリケーションでのログインとパスワードの管理
レプリケーションを構成するときに、レプリケーション エージェントのログインとパスワードを指定します。 レプリケーションを構成したら、ログインとパスワードを変更できます。 詳細については、「 レプリケーションのセキュリティ設定の表示と変更」を参照してください。 レプリケーション エージェントによって使用されるアカウントのパスワードを変更する場合は、 sp_changereplicationserverpasswords (Transact-SQL) を実行します。
こちらもご覧ください
レプリケーション エージェントのセキュリティ モデル
レプリケーション のセキュリティに関するベスト プラクティス
SQL Server レプリケーションのセキュリティ
レプリケーションの脅威と脆弱性の軽減策