Condividi tramite


Architettura di sicurezza per la sincronizzazione Web

Microsoft SQL Server consente un controllo granulare sulla configurazione della sicurezza della sincronizzazione Web. In questo argomento viene fornito un elenco completo di tutti i componenti che possono essere inclusi in una configurazione di sincronizzazione Web e informazioni sulle connessioni effettuate tra i componenti. Se possibile, usare l'autenticazione di Windows.

La figura seguente mostra tutte le possibili connessioni, ma alcune connessioni potrebbero non essere necessarie in una particolare topologia. Ad esempio, una connessione a un server FTP è necessaria solo se lo snapshot viene recapitato tramite FTP.

Componenti e connessioni in Componenti

Le tabelle seguenti descrivono i componenti e le connessioni mostrati nell'illustrazione.

Un. Utente di Windows con cui viene eseguito l'agente di merge

Durante la sincronizzazione, l'agente di merge (A) viene avviato nel Sottoscrittore. L'agente di merge può essere avviato da un passaggio di processo di SQL Server Agent o da un'applicazione personalizzata autonoma. Se l'agente di merge viene avviato da un passaggio di processo di SQL Server Agent, l'agente di merge viene eseguito nel contesto di un utente di Windows specificato. Se non si specifica un utente di Windows, l'agente di merge viene eseguito nel contesto dell'account del servizio Windows per SQL Server Agent.

Tipo di account Dove viene specificato l'account
Utente di Windows Transact-SQL: i parametri @job_login e @job_password di sp_addmergepullsubscription_agent.

RMO (Replication Management Objects): le Login proprietà e Password per SynchronizationAgentProcessSecurity.
Account del servizio Windows per SQL Server Agent Manager di configurazione di SQL Server
Applicazione autonoma L'agente di merge viene eseguito nel contesto dell'utente di Windows che esegue l'applicazione.

B. Connessione al Sottoscrittore

L'agente di merge si connette al Sottoscrittore usando l'autenticazione di Windows o l'autenticazione di SQL Server. L'account di accesso di Windows o SQL Server specificato deve essere associato a un utente del database membro del ruolo predefinito del database dbowner nel database di sottoscrizione.

Annotazioni

L'autenticazione di Windows viene sempre usata quando l'agente di merge viene avviato da un processo di SQL Server Agent. L'autenticazione di Windows viene usata anche quando l'agente di merge viene avviato a livello di codice, a meno che non venga specificata in modo esplicito l'autenticazione di SQL Server.

Tipo di autenticazione Dove viene specificata l'autenticazione
Autenticazione di Windows. L'agente di merge stabilisce connessioni nel contesto dell'utente di Windows specificato per l'agente di merge (A).
L'autenticazione di SQL Server viene usata solo se si specifica quanto segue:

RMO: valore di Standard per SubscriberSecurityMode.

Riga di comando dell'agente di merge: valore 0 per SubscriberSecurityMode.
RMO: SubscriberLogin e SubscriberPassword.

Riga di comando dell'agente di merge: -SubscriberLogin e -SubscriberLogin.

C. Connessione a un server proxy in uscita

Specificare un utente di Windows per questa connessione solo se è presente un server proxy in uscita che limita l'accesso alla rete interna del Sottoscrittore.

Tipo di autenticazione Dove viene specificata l'autenticazione
Autenticazione di Windows RMO: InternetProxyLogin e InternetProxyPassword con InternetProxyServer.

Riga di comando dell'agente di merge: -InternetProxyLogin e -InternetProxyPassword con -InternetProxyServer.

D. Connessione a IIS

Dopo la connessione al Sottoscrittore e l'estrazione di eventuali modifiche dal database di sottoscrizione, l'agente di merge effettua una richiesta HTTPS a Microsoft Internet Information Services (IIS) e carica le modifiche ai dati come messaggio XML. L'agente di merge deve disporre delle autorizzazioni di accesso per IIS.

Tipo di autenticazione Dove viene specificata l'autenticazione
L'autenticazione di base viene usata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 0 per il parametro @internet_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Standard per InternetSecurityMode.

Riga di comando dell'agente di merge: valore 0 per -InternetSecurityMode.
Transact-SQL: i parametri @internet_login e @internet_password di sp_addmergepullsubscription_agent.

RMO: InternetLogin e InternetPassword.

Riga di comando dell'agente di fusione: -InternetLogin e -InternetPassword.
L'autenticazione integrata* viene utilizzata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 1 per il parametro @internet_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Integrated per InternetSecurityMode.

Riga di comando dell'agente di merge: valore 1 per -InternetSecurityMode.
L'agente di merge stabilisce connessioni nel contesto dell'utente di Windows specificato per il Merge Agent (A).

*L'autenticazione integrata può essere usata solo se tutti i computer si trovano nello stesso dominio o si trovano in più domini con relazioni di trust tra loro.

Annotazioni

La delega è necessaria se si utilizza l'autenticazione integrata. È consigliabile usare l'autenticazione di base e SSL per le connessioni dal Sottoscrittore a IIS.

E. Connessione al server di pubblicazione

I componenti listener di replica di SQL Server e Riconciliatore replica di tipo merge sono ospitati nel computer che esegue IIS. Questi componenti eseguono le azioni seguenti:

  • Selezionare la richiesta HTTPS descritta nella sezione "D. Connessione a IIS".

  • Stabilire una connessione SQL al database di pubblicazione e applicare le modifiche caricate al database di pubblicazione.

  • Estrarre le modifiche scaricate e inviare una risposta HTTPS all'agente di merge.

Il Riconciliatore di replica merge si connette al Publisher utilizzando l'autenticazione di Windows o l'autenticazione di SQL Server. L'account di accesso di Windows o SQL Server specificato deve essere conforme al seguente:

  • Trovarsi nell'elenco di accesso alla pubblicazione. Per ulteriori informazioni, vedere Proteggere l'editore.

  • Essere associati con un utente nel database di pubblicazione.

Tipo di autenticazione Dove viene specificata l'autenticazione
L'autenticazione di Windows viene utilizzata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 1 per il parametro @publisher_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Integrated per PublisherSecurityMode.

Riga di comando dell'agente di merge: valore 1 per -PublisherSecurityMode.
L'agente di merge stabilisce connessioni al server di pubblicazione nel contesto dell'utente di Windows specificato per la connessione a IIS (D). Se il server di pubblicazione e IIS si trovano in computer diversi e viene usata l'autenticazione integrata per la connessione (D), è necessario abilitare la delega Kerberos nel computer che esegue IIS. Per ulteriori informazioni, vedere la documentazione di Windows.
L'autenticazione di SQL Server viene usata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 0 per il parametro @publisher_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Standard per PublisherSecurityMode.

Riga di comando dell'agente di merge: valore 0 per -PublisherSecurityMode.
Transact-SQL: i parametri @publisher_login e @publisher_password di sp_addmergepullsubscription_agent.

RMO: PublisherLogin e PublisherPassword.

Riga di comando del Merge Agent: -PublisherLogin e -PublisherPassword.

F. Connessione al server di distribuzione

Il riconciliatore replica di tipo merge ospitato nel computer che esegue IIS esegue anche le connessioni al server di distribuzione. Il riconciliatore della replica di tipo merge si connette al server di distribuzione usando l'autenticazione di Windows o l'autenticazione di SQL Server. L'account di accesso di Windows o SQL Server specificato deve essere conforme al seguente:

  • Accedere alla pubblicazione.Be in the publication access (PAL). Per ulteriori informazioni, vedere Proteggere l'editore.

  • Essere associati a un utente del database nel database di distribuzione. L'utente può essere l'utente Guest .

La condivisione snapshot si trova in genere nel server di distribuzione. Per ulteriori informazioni sulle condivisioni snapshot, vedere la sezione "H. Accesso alla condivisione di "snapshot" più avanti in questo argomento.

Tipo di autenticazione Dove viene specificata l'autenticazione
L'autenticazione di Windows viene utilizzata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 1 per il parametro @distributor_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Integrated per DistributorSecurityMode.

Riga di comando dell'agente di merge: valore 1 per -DistributorSecurityMode.
L'agente di merge stabilisce connessioni al server di distribuzione nel contesto dell'utente di Windows specificato per la connessione a IIS (D). Se il server di distribuzione e IIS si trovano in computer diversi e viene usata l'autenticazione integrata per la connessione (D), è necessario abilitare la delega Kerberos nel computer che esegue IIS. Per ulteriori informazioni, vedere la documentazione di Windows.
L'autenticazione di SQL Server viene usata se viene specificato uno dei seguenti elementi:

Transact-SQL: valore 0 per il parametro @distributor_security_mode di sp_addmergepullsubscription_agent.

RMO: valore di Standard per DistributorSecurityMode.

Comando dell'agente di merge: un valore di 0 per -DistributorSecurityMode.
Transact-SQL: i parametri @distributor_login e @distributor_password di sp_addmergepullsubscription_agent.

RMO: DistributorLogin e DistributorPassword

Riga di comando dell'agente di merge: -DistributorLogin e -DistributorPassword.

G. Connessione a un server FTP

Specificare un utente di Windows per questa connessione solo se si scaricherà i file di snapshot da un server FTP, anziché da un percorso UNC, al computer che esegue IIS prima di applicare lo snapshot al Sottoscrittore. Per altre informazioni, vedere Trasferire snapshot tramite FTP.

Tipo di autenticazione Dove viene specificata l'autenticazione
Autenticazione di Windows Transact-SQL: i parametri @ftp_login e @ftp_password di sp_addmergepublication.

RMO: FtpLogin e FtpPassword.

H. Accesso alla condivisione dell'istantanea

La condivisione dello snapshot è accessibile dal Riconciliatore della replica di tipo merge ospitato nel computer su cui è in esecuzione IIS.

Tipo di autenticazione Dove viene specificata l'autenticazione
Autenticazione di Windows L'agente di merge accede alla condivisione snapshot nel contesto dell'utente di Windows specificato per la connessione a IIS (D). Se la condivisione snapshot e IIS si trovano in computer diversi e per la connessione (D) viene usata l'autenticazione integrata, è necessario abilitare la delega Kerberos nel computer che esegue IIS. Per ulteriori informazioni, vedere la documentazione di Windows.

Io. Account del pool di applicazioni per IIS

Questo account viene usato per avviare il processo di W3wp.exe nel computer che esegue IIS per Windows Server 2003 o il processo di Dllhost.exe in Windows 2000. Questi processi ospitano applicazioni nel computer che esegue IIS, come l'ascoltatore di replica di SQL Server e il riconciliatore della replica merge. Questo account deve disporre delle autorizzazioni di lettura ed esecuzione per le DLL di replica seguenti nel computer che esegue IIS:

  • Replisapi

  • Riplrec

  • Replprov

  • Msgprox

  • Xmlsub

L'account deve anche far parte di IIS_WPG gruppo. Per altre informazioni, vedere la sezione "Impostazione delle autorizzazioni per il listener di replica di SQL Server" in Configurare IIS per la sincronizzazione Web.

Tipo di account Dove viene specificato l'account
Qualsiasi utente di Windows con le autorizzazioni necessarie. Gestione Internet Information Services (IIS).

Vedere anche

Configurare la sincronizzazione Web
Agente di merge della replica