Proteggere il database di distribuzione

Si applica a: SQL Server Istanza gestita di SQL di Azure

Gli agenti di replica che si connettono al server di distribuzione sono l'agente di lettura log, l'agente snapshot, l'agente di lettura coda, l'agente di distribuzione e l'agente di merge. È importante fornire un account di accesso appropriato per ognuno di questi agenti seguendo il principio di concedere i diritti minimi necessari nonché proteggere l'archiviazione di tutte le password:

Oltre a gestire correttamente account di accesso e password, è fondamentale comprendere il ruolo del collegamento del server remoto repl_distributor e dell'account distributor_admin .

Protezione della connessione dal server di pubblicazione al server di distribuzione

Per supportare la comunicazione necessaria quando le stored procedure amministrative vengono eseguite nel server di pubblicazione e aggiornare le informazioni nel server di distribuzione, il server remoto repl_distributorviene configurato automaticamente durante la replica. La voce del server remoto repl_distributor viene utilizzata per le comunicazioni con il database di distribuzione indipendentemente dal fatto che il database di distribuzione sia contenuto nell'istanza del server di pubblicazione (un server di distribuzione locale) o risieda in un'istanza SQL Server remota (un server di distribuzione remoto).

Quando il database di distribuzione è contenuto in un'istanza locale, una password casuale viene generata e configurata automaticamente. Quando invece si trova in un'istanza remota, l'amministratore configura una password condivisa durante l'installazione del server di pubblicazione e del server di distribuzione. Tale password viene quindi utilizzata per fornire l'autenticazione del traffico che attraversa il collegamento repl_distributor .

Il server di distribuzione utilizza la voce del server remoto repl_distributor per verificare che il server chiamante sia configurato come server di pubblicazione nel server di distribuzione, convalida la password fornita dal server di pubblicazione e quindi verifica in fase di esecuzione che la stored procedure sia una stored procedure di replica.

La password configurata per la voce del server remoto repl_distributor durante l'installazione viene associata all'account di accesso distributor_admin di SQL Server, che viene aggiunto al ruolo predefinito del server sysadmin nel server di distribuzione. L'account di accesso distributor_admin viene utilizzato dalle stored procedure di replica durante la connessione al server di distribuzione.

Nota

Non modificare manualmente la password di distributor_admin . Utilizzare sempre la stored procedure sp_changedistributor_password o le finestre di dialogo Proprietà database di distribuzione o Aggiorna password di replica di SQL Server Management Studio, in quanto le modifiche apportate alle password vengono successivamente applicate alle pubblicazioni locali in modo automatico.

Disabilitazione dell'account di accesso distributor_admin

Se l'account di accesso distributor_admin è disabilitato in un server di distribuzione remoto, potrebbe non essere più possibile eseguire le operazioni seguenti:

  • Creare o eliminare di pubblicazioni.
  • Modificare gli articoli di una pubblicazione esistente.
  • Vedere lo stato dell'agente usando SQL Server Management Studio (SSMS) o Monitoraggio replica nel server di pubblicazione.
  • Creare o eliminare sottoscrizioni.
  • Eseguire i token di traccia tramite Monitoraggio replica o eseguendo sys.sp_posttracertoken.
  • Configurare un server di distribuzione e pubblicazione remoto.

Di conseguenza, non è consigliabile disabilitare l'account di accesso distributor_admin in un server di distribuzione remoto. Anche se la disabilitazione dell'account di accesso distributor_admin in un server di distribuzione locale potrebbe non imporre le stesse limitazioni, non è ancora una procedura consigliata.

Sicurezza della cartella snapshot

Verificare che la condivisione snapshot disponga di accesso in lettura per l'account con il quale viene eseguito l'agente di merge (per la replica di tipo merge) o l'agente di distribuzione (per la replica snapshot o transazionale) e di accesso in scrittura per l'account con il quale viene eseguito l'agente snapshot. Per altre informazioni sulla cartella snapshot, vedere Proteggere la cartella snapshot.