Sécurisation du serveur de publication
Les Agents de réplication suivants se connectent au serveur de publication :
Agent de lecture du journal ;
Agent de capture instantanée ;
Agent de lecture de la file d'attente ;
Agent de fusion
Il est recommandé de fournir un nom de connexion approprié pour ces agents, de respecter le principe consistant à attribuer les droits nécessaires minimaux et de protéger le stockage de tous les mots de passe. Pour plus d'informations sur la gestion des noms de connexions et des mots de passe, consultez Gestion des connexions et des mots de passe dans la réplication. Pour plus d'informations sur les autorisations requises pour chaque agent, consultez Modèle de sécurité de l'Agent de réplication.
Outre la gestion correcte des connexions et des mots de passe, il convient de comprendre le rôle de la liste d'accès à la publication (PAL, Publication Access List). La liste d'accès à la publication sert à activer les connexions pour qu'elles accèdent aux données de publication tout en limitant l'accès ad hoc à la base de données sur le serveur de publication.
Liste d'accès aux publications (PAL)
Cette dernière constitue le mécanisme principal assurant la sécurité des publications sur le serveur de publication. La liste d'accès à la publication fonctionne de manière similaire à une liste de contrôle d'accès Microsoft Windows. Lorsque vous créez une publication, la réplication crée une PAL pour la publication. Cette PAL peut être configurée pour contenir un ensemble de noms de connexions et de groupes disposant de l'autorisation d'accès à la publication. Lorsqu'un agent se connecte au serveur de publication ou de distribution et demande l'accès à une publication, les informations d'authentification figurant dans la PAL sont comparées aux informations de connexion fournies par l'agent. Ce processus permet d'assurer un niveau de sécurité supplémentaire vis-à-vis du serveur de publication en empêchant l'utilisation des informations de connexion du serveur de publication et du serveur de distribution par un outil client pouvant procéder à des modifications directement sur le serveur de publication.
Notes
La réplication crée un rôle sur le serveur de publication pour que chaque publication exige l'appartenance à la PAL. Le rôle a un nom de la forme Msmerge_<IDPublication> pour la réplication de fusion et MSReplPAL_<IDBaseDeDonnéesPublication>_<IDPublication> pour la réplication transactionnelle et de capture instantanée.
Par défaut, les connexions suivantes figurent dans la PAL : les membres du rôle serveur fixe sysadmin (au moment de la création de la publication) et le nom de connexion utilisé pour créer la publication. Par défaut, toutes les connexions qui sont membres du rôle serveur fixe sysadmin ou du rôle de base de données fixe db_owner sur la base de données de publication peuvent s'abonner à une publication sans être explicitement ajoutées à la PAL.
Lorsque vous utilisez la PAL, respectez les consignes suivantes :
Vous devez associer la connexion SQL Server à un utilisateur de la base de données de publication avant d'ajouter cette connexion à la liste d'accès à la publication.
Appliquez le principe du privilège minimal, en n'accordant aux connexions situées dans la PAL que les autorisations dont elles ont besoin pour exécuter les tâches de réplication. N'ajoutez ces noms de connexions à aucun rôle de base de données ou de serveur fixe qui n'est pas nécessaire à la réplication. Pour plus d'informations sur les autorisations nécessaires, consultez Modèle de sécurité de l'Agent de réplication et Méthodes préconisées en matière de sécurité de réplication.
En cas d'utilisation d'un serveur de distribution distant, les comptes de la liste d'accès à la publication doivent être disponibles à la fois auprès du serveur de publication et auprès du serveur de distribution. Le compte doit être un compte de domaine ou un compte local défini sur les deux serveurs. Les mots de passe associés aux deux connexions doivent être identiques.
Si la PAL contient des comptes Windows et si le domaine utilise Active Directory, le compte sous lequel SQL Server s'exécute doit disposer des autorisations nécessaires pour lire dans Active Directory. Si vous rencontrez des problèmes avec les comptes Windows, assurez-vous que le compte sous lequel SQL Server s'exécute détient des droits suffisants. Pour plus d'informations, consultez la documentation Windows.
Pour gérer la PAL
SQL Server Management Studio: Procédure : gérer des noms de connexion dans la liste d'accès à la publication (SQL Server Management Studio)
Programmation de réplication Transact-SQL : Procédure : gérer des connexions dans la liste d'accès à la publication (programmation Transact-SQL de la réplication)