Arquitetura de segurança para sincronização da Web
Aplica-se a: SQL Server
O Microsoft SQL Server habilita o controle refinado da configuração de segurança para sincronização da Web. Esse tópico fornece uma lista abrangente de todos os componentes que podem ser incluídos na configuração da sincronização da Web e as informações sobre as conexões que são efetuadas entre os componentes. Quando possível, use a autenticação do Windows.
A ilustração a seguir mostra todas as possíveis conexões, embora algumas possam ser desnecessárias em uma topologia específica. Por exemplo, uma conexão para um servidor de FTP só será necessária se o instantâneo for entregue através de FTP.
As tabelas a seguir descrevem os componentes e as conexões ilustrados.
R. Usuário do Windows sob o qual o Merge Agent é executado
Durante a sincronização, o Merge Agent (A) é iniciado no Assinante. O Agente de Mesclagem pode ser iniciado a partir de uma etapa de trabalho do SQL Server Agent ou de um aplicativo autônomo personalizado. Se o Merge Agent for iniciado de uma etapa de trabalho do SQL Server Agent, o Agente de Mesclagem executará sob o contexto de um usuário do Windows a ser especificado por você. Se não especificar um usuário do Windows, o Merge Agent executa sob o contexto da conta de serviços do Windows para o SQL Server Agent.
Tipo de conta | Onde a conta é especificada |
---|---|
usuário Windows | Transact-SQL: os parâmetros @job_login e @job_password de sp_addmergepullsubscription_agent.RMO (Replication Management Objects): as propriedades Login e Password para SynchronizationAgentProcessSecurity. |
Conta de serviço do Windows para o SQL Server Agent | SQL Server Configuration Manager |
Aplicativo autônomo | O Merge Agent executa sob o contexto do usuário do Windows que estiver executando o aplicativo. |
B. Conexão com o Assinante
O Agente de Mesclagem conecta-se com Assinante usando a Autenticação do Windows ou a ou Autenticação do SQL Server. O usuário do Windows ou o logon do SQL Server que você especificar deve ser associado a um usuário de banco de dados que seja membro da função de banco de dados fixa dbowner, no banco de dados de assinatura.
Observação
A Autenticação do Windows é sempre usada quando o Agente de Mesclagem é iniciado de um trabalho do SQL Server Agent. A Autenticação do Windows é também usada quando o Agente de Mesclagem é iniciado de forma programada, a menos que a Autenticação do SQL Server esteja especificada explicitamente.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
- Autenticação do Windows. | O Merge Agent efetua conexões sob o contexto do usuário do Windows que estiver especificado para o Merge Agent (A). |
A Autenticação do SQL Server apenas será usada se o seguinte estiver especificado: - RMO: um valor igual a Standard para SubscriberSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 0 para SubscriberSecurityMode. |
RMO: SubscriberLogin e SubscriberPassword. Linha de comando do Merge Agent: -SubscriberLogin e -SubscriberLogin. |
C. Conexão com um servidor proxy de saída
Especifique um usuário Windows para esta conexão somente se houver um servidor proxy de saída que restrinja o acesso a uma rede interna do Assinante.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
Autenticação do Windows | RMO: InternetProxyLogin e InternetProxyPassword com InternetProxyServer. A linha de comando do Merge Agent: -InternetProxyLogin e -InternetProxyPassword com - InternetProxyServer. |
D. Conexão com o IIS
Após conectar-se ao Assinante e extrair as alterações do banco de dados de assinatura, o Merge Agent emite uma solicitação HTTPS ao Microsoft IIS (Serviços de Informações da Internet) e carrega as alterações de dados como uma mensagem XML. O Merge Agent deve ter permissões de logon para o IIS.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
A Autenticação Básica será usada se um dos itens a seguir for especificado: - Transact-SQL: um valor de 0 para o parâmetro @internet_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Standard para InternetSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 0 para -InternetSecurityMode. |
Transact-SQL: os parâmetros @internet_login e @internet_password de sp_addmergepullsubscription_agent.RMO: InternetLogin e InternetPassword. Linha de comando do Merge Agent: -InternetLogin e -InternetPassword. |
A Autenticação Integrada1 será usada se um dos itens a seguir for especificado: - Transact-SQL: um valor de 1 para o parâmetro @internet_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Integrated para InternetSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 1 para -InternetSecurityMode. |
O Merge Agent efetua conexões sob o contexto do usuário do Windows que estiver especificado para o Merge Agent (A). |
1 A autenticação integrada poderá ser usada somente se todos os computadores estiverem no mesmo domínio ou em vários domínios que tenham relações de confiança um com o outro.
Observação
A delegação é necessária quando se usa a Autenticação integrada. Recomendamos usar a Autenticação Básica e o TLS para conexões do Assinante com o IIS.
E. Conexão com o Publicador
Os componentes do SQL Server Replication Listener e do Reconciliador de Replicação de Mesclagem do estão hospedados no computador que está executando o IIS. Esses componentes executam as seguintes ações:
Retiram a solicitação HTTPS descrita na seção "D. Conexão com o IIS."
Faça uma conexão SQL com o banco de dados de publicação e aplique as alterações carregadas ao banco de dados de publicação.
Extraem as alterações baixadas e retornam uma resposta em HTTPS ao Merge Agent.
O Reconciliador de Replicação de Mesclagem se conecta ao Publicador usando a Autenticação do Windows ou a Autenticação do SQL Server. O usuário do Windows ou o logon do SQL Server que você especificar deve ser compatível com o seguinte:
Estar na lista de acesso à publicação (PAL). Para obter mais informações, consulte Secure the Publisher (Proteger o publicador).
Estar associado a um usuário no banco de dados de publicação.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
A Autenticação do Windows será usada se um dos seguintes for especificado: - Transact-SQL: um valor de 1 para o parâmetro @publisher_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Integrated para PublisherSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 1 para -PublisherSecurityMode. |
O Merge Agent efetua conexões com o Publicador no contexto do usuário do Windows que estiver especificado para a conexão com o ISS (D). Se o Publicador e o ISS estiverem em computadores diferentes e a Autenticação Integrada for usada para a conexão (D), será preciso habilitar a delegação Kerberos no computador executando o IIS. Para obter mais informações, consulte a documentação do Windows. |
A Autenticação do SQL Server será usada se um dos seguintes for especificado: - Transact-SQL: um valor de 0 para o parâmetro @publisher_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Standard para PublisherSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 0 para -PublisherSecurityMode. |
Transact-SQL: os parâmetros @publisher_login e @publisher_password de sp_addmergepullsubscription_agent.RMO: PublisherLogin e PublisherPassword. Linha de comando do Merge Agent: -PublisherLogin e -PublisherPassword. |
F. Conexão com o Distribuidor
O Replication Listener e o Reconciliador de Replicação de Mesclagem que estão hospedados no computador que está executando o IIS, também efetuam conexões com o Distribuidor. O Reconciliador de Replicação de Mesclagem conecta-se com o Distribuidor usando a Autenticação do Windows ou a Autenticação do SQL Server. O usuário do Windows ou o logon do SQL Server que você especificar deve ser compatível com o seguinte:
Estar na lista de acesso à publicação (PAL). Para obter mais informações, consulte Secure the Publisher (Proteger o publicador).
Estar associado a um usuário de banco de dados no banco de dados de distribuição. O usuário pode ser o usuário Guest .
Geralmente, o compartilhamento de instantâneos está no Distribuidor. Para obter mais informações sobre os compartilhamentos de instantâneos, consulte a seção "H. Acesso ao compartilhamento de instantâneos", mais adiante nesse tópico.
- Tipo de autenticação | Onde a autenticação é especificada |
---|---|
A Autenticação do Windows será usada se um dos seguintes for especificado: - Transact-SQL: um valor de 1 para o parâmetro @distributor_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Integrated para DistributorSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 1 para -DistributorSecurityMode. |
O Merge Agent efetua conexões ao Distribuidor sob o contexto do usuário do Windows especificado para a conexão com o IIS (D). Se o Distribuidor e o ISS estiverem em computadores diferentes e a Autenticação Integrada for usada para a conexão (D), será preciso habilitar a delegação Kerberos no computador executando o IIS. Para obter mais informações, consulte a documentação do Windows. |
A Autenticação do SQL Server será usada se um dos seguintes for especificado: - Transact-SQL: um valor de 0 para o parâmetro @distributor_security_mode de sp_addmergepullsubscription_agent.- RMO: um valor igual a Standard para DistributorSecurityMode. - Linha de comando do Agente de Mesclagem: um valor de 0 para -DistributorSecurityMode. |
Transact-SQL: os parâmetros @distributor_login e @distributor_password de sp_addmergepullsubscription_agent.RMO: DistributorLogin e DistributorPassword Linha de comando do Merge Agent: -DistributorLogin e -DistributorPassword. |
G. Conexão com um servidor de FTP
Especifique um usuário do Windows para esta conexão somente se pretende baixar arquivos de instantâneos de um servidor de FTP, em vez de um local UNC, para o computador executando o IIS, antes de aplicar o instantâneo ao Assinante. Para obter mais informações, consulte Transferir instantâneos pelo FTP.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
Autenticação do Windows | Transact-SQL: os parâmetros @ftp_login e @ftp_password de sp_addmergepublication.RMO: FtpLogin e FtpPassword. |
H. Acesso a um compartilhamento de instantâneos
O compartilhamento de instantâneos é acessado pelo Reconciliador de Replicação de Mesclagem hospedado no computador que está executando IIS.
Tipo de autenticação | Onde a autenticação é especificada |
---|---|
Autenticação do Windows | O Merge Agent acessa o compartilhamento de instantâneos sob o contexto do usuário do Windows especificado para a conexão ao IIS (D). Se o compartilhamento de instantâneos e o ISS estiverem em computadores diferentes e a Autenticação Integrada for usada para a conexão (D), será preciso habilitar a delegação Kerberos no computador executando o IIS. Para obter mais informações, consulte a documentação do Windows. |
I. Conta do pool de aplicativos para o IIS
Essa conta é usada para iniciar o processo W3wp.exe no computador executando o IIS para Windows Server 2003 ou o processo Dllhost.exe no Windows 2000. Esses processos hospedam aplicativos no computador executando o IIS, como o Replication Listener e o Reconciliador de Replicação de Mesclagem do SQL Server. Essa conta deve ter permissões de leitura e de execução nos seguintes DLLs de replicação no computador executando o IIS:
Replisapi
Replrec
Replprov
Msgprox
Xmlsub
A conta deve fazer também parte do grupo IIS_WPG. Para obter mais informações, consulte a seção "Definindo permissões para o SQL Server Replication Listener", em Configurar IIS para sincronização da Web.
Tipo de conta | Onde a conta é especificada |
---|---|
Qualquer usuário do Windows que tenha as permissões exigidas. | Gerenciador dos Serviços de Informações da Internet (IIS). |