Compartilhar via


Configurar o IIS para Sincronização da Web

Os procedimentos neste tópico compõem a segunda etapa na configuração da sincronização da Web para replicação de mesclagem. Execute esta etapa depois de habilitar uma publicação para sincronização da Web. Para obter uma visão geral do processo de configuração, consulte Configurar a Sincronização da Web. Depois de concluir os procedimentos neste tópico, prossiga para a terceira etapa, configurando uma assinatura para usar a sincronização da Web. Esta terceira etapa é descrita nos seguintes tópicos:

A sincronização da Web usa um computador que está executando o Microsoft Internet Information Services (IIS) para sincronizar assinaturas do tipo pull com as publicações a serem mescladas. Há suporte para IIS versão 5.0, IIS versão 6.0 e IIS versão 7.0. Não há suporte para o Assistente para Configurar Sincronização da Web no IIS versão 7.0.

Importante

Verifique se seu aplicativo usa apenas o .NET Framework 2.0 ou versões posteriores e se as versões anteriores do .NET Framework não estão instaladas no servidor IIS. Versões anteriores do .NET Framework podem causar erros. Estes incluem o seguinte: "O formato de uma mensagem durante a sincronização da Web era inválido. Verifique se os componentes de replicação estão configurados corretamente no servidor Web".

Cuidado

Não use WebSync e locais de pasta de instantâneos alternativos ao mesmo tempo.

Para usar a sincronização da Web, é necessário configurar o IIS concluindo as etapas a seguir. Cada etapa é descrita em detalhes neste tópico.

  1. Configurar a SSL (Camada de Soquetes Seguros). O SSL é necessário para comunicação entre o IIS e todos os Assinantes.

  2. Instale os componentes de conectividade do Microsoft SQL Server no computador que está executando o IIS usando o Assistente de Instalação do SQL Server. Se você planeja usar o Assistente de Configuração de Sincronização da Web mencionado na etapa 3, você também deve instalar o SQL Server Management Studio no computador que está executando o IIS.

  3. Configure o computador que está executando o IIS para sincronização da Web. Você pode configurar o computador manualmente ou usar o Assistente para Configurar Sincronização da Web. Recomendamos que você use o assistente.

    Observação

    Se o computador que está executando o IIS estiver em execução em uma versão de 64 bits do Windows, você deverá executar o comando a seguir para garantir que o servidor esteja configurado corretamente para executar aplicativos ISAPI (API do Internet Server). Para obter mais informações, consulte a documentação do IIS.

    cscript %SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1  
    
  4. Defina as permissões apropriadas para o Ouvinte de Replicação do SQL Server.

  5. Execute a sincronização da Web no modo de diagnóstico para testar a conexão com o computador que está executando o IIS e verificar se o certificado SSL está instalado corretamente.

Configurando a camada de soquetes seguros

Para configurar o SSL, especifique um certificado para o computador que está executando o IIS a ser usado. A sincronização via Web para replicação de mesclagem oferece suporte ao uso de certificados de servidor, mas não a certificados de cliente. Para configurar o IIS para implantação, você deve obter primeiro um certificado de uma CA (autoridade de certificação). Uma autoridade de certificação é uma entidade responsável por estabelecer e atestar a autenticidade das chaves de criptografia públicas que pertencem a usuários, computadores ou outras autoridades de certificação. Para obter mais informações sobre certificados, consulte a documentação do IIS. Depois de instalar o certificado, você deve associar o certificado ao site da Web que é usado pela sincronização da Web.

Para especificar um certificado para implantação

  1. Faça logon no computador que está executando o IIS como administrador.

  2. Inicie o Gerenciador do IIS (Serviços de Informações da Internet):

    1. Clique em Iniciar e em Executar.

    2. Na caixa Abrir, digite inetmgr e clique em OK.

  3. Execute o Assistente de Certificado do IIS:

    1. No Gerenciador dos Serviços de Informações da Internet (IIS), expanda o nó do computador local e expanda a pasta Sites da Web .

    2. Clique com o botão direito do mouse no Site Padrão e clique em Propriedades.

    3. Na caixa de diálogo Propriedades do Site Padrão , na guia Segurança do Diretório , clique em Certificado do Servidor.

    4. Conclua o Assistente de Certificado do Servidor Web.

  4. Clique em OK.

Se você não conseguir obter um certificado de servidor de uma AC, poderá especificar um certificado para teste. Para configurar o IIS 6.0 para teste, instale um certificado usando o utilitário SelfSSL. Esse utilitário está disponível no Kit de Recursos do IIS 6.0. Você pode baixar as ferramentas do Centro de Download da Microsoft. Para o IIS 5.0, acesse a Ajuda e o Suporte da Microsoft.

Observação

Um certificado deve ser associado a um site da Web antes que esse site possa usar o SSL. O SelfSSL associa automaticamente o certificado ao site padrão. Se você já tiver um certificado ou posteriormente instalar um certificado de uma AC, deverá associar explicitamente esse certificado ao site usado pela sincronização da Web. Verifique se há apenas um certificado associado ao site que é usado para sincronizar assinaturas. Se houver vários certificados, o Assinante usará o primeiro site disponível.

Para especificar um certificado para teste no IIS 6.0

  1. Faça logon no computador que está executando o IIS como administrador.

  2. Baixe e instale o SelfSSL. Por padrão, o aplicativo é instalado para <unidade>:\Arquivos de Programas\Recursos do IIS\SelfSSL. Os atalhos de aplicativo e documentação são copiados para <drive>:\Documents and Settings\All Users\Start Menu\Programs\IIS Resources\SelfSSL.

  3. Executar SelfSSL:

    • Para executar o SelfSSL com valores padrão para todos os parâmetros, localize o diretório de instalação do aplicativo e clique duas vezes SelfSSL.exe.

      Observação

      Por padrão, o certificado instalado pelo SelfSSL é válido por sete dias.

    • Para especificar valores para um ou mais parâmetros: clique em Iniciar e clique em Executar. Na caixa Abrir , insira cmde clique em OK. Localize o diretório de instalação do SelfSSL, digite SelfSSLe especifique valores para um ou mais parâmetros. Para obter uma lista de parâmetros, digite SelfSSL -?.

Instalando componentes de conectividade e o SQL Server Management Studio

Para instalar os componentes de conectividade do SQL Server e o SQL Server Management Studio

  1. Faça logon como administrador no computador que está executando o IIS.

  2. No disco de instalação do SQL Server 2012, inicie o Assistente de Instalação do SQL Server. Para obter mais informações sobre como usar esse assistente, consulte Instalar o SQL Server 2014 por meio do Assistente de Instalação (Instalação).

  3. Na página Seleção de Recursos , selecione Conectividade de Ferramentas de Cliente.

  4. Se você planeja usar o Assistente para Configurar Sincronização da Web, selecione Ferramentas de Gerenciamento – Básico.

  5. Conclua o assistente e reinicie o computador.

    Observação

    Você pode instalar componentes adicionais, mas apenas os componentes de conectividade são necessários para sincronização da Web.

Configurando o computador que está executando o IIS usando o Assistente para Configurar Sincronização da Web

Configure o servidor IIS usando o Assistente de Configuração de Sincronização da Web ou manualmente. É recomendável usar o assistente, mas também fornecemos etapas para a configuração manual na próxima seção. O Assistente de Sincronização da Web que está disponível com o SQL Server 2012 só pode ser usado para publicações que foram criadas em um Publicador que está executando o SQL Server 2012 ou um Publicador que foi atualizado para o SQL Server 2012. O assistente não pode ser usado para publicações no SQL Server 2005. O assistente pode ser usado com assinaturas no SQL Server 2005 e versões posteriores e no SQL Server Compact 3.5 3.0 e versões posteriores.

A configuração tem as seguintes características:

  • Usa o site padrão no IIS. No entanto, você pode usar outro site. Para obter mais informações sobre como criar sites, consulte a documentação do IIS.

    Observação

    O site especificado fornece acesso aos componentes usados pela sincronização da Web. O site não fornece acesso a outros dados ou páginas da Web, a menos que você configure o site para fazer isso.

  • Cria um diretório virtual e seu alias associado. O alias é usado ao acessar os componentes de sincronização da Web. Por exemplo, se o endereço IIS for https://*server.domain.com* e você especificar um alias de 'websync1', o endereço para acessar o componente replisapi.dll será https://*server.domain.com*/websync1/replisapi.dll.

  • Usa a Autenticação Básica. É recomendável usar a Autenticação Básica porque a Autenticação Básica permite que você execute o IIS e o Publicador/Distribuidor do SQL Server em computadores separados (a configuração recomendada) sem a necessidade de delegação kerberos. O uso do SSL com a Autenticação Básica garante que logons, senhas e todos os dados sejam criptografados em trânsito. (O SSL é necessário, independentemente do tipo de autenticação usado.) Para obter mais informações sobre as práticas recomendadas para sincronização da Web, consulte a seção "Práticas recomendadas de segurança para sincronização da Web" na configuração da sincronização da Web.

Para configurar o computador que está executando o IIS usando o Assistente para Configurar Sincronização da Web

  1. No computador que está executando o IIS, inicie o SQL Server Management Studio.

  2. Conecte-se ao Publicador e expanda o nó do servidor.

  3. Expanda a pasta Publicações Locais , clique com o botão direito do mouse na publicação e clique em Configurar Sincronização da Web.

  4. No Assistente para Configurar Sincronização da Web, na página Tipo de Assinante, selecione SQL Server.

  5. Na página servidor Web :

    1. Selecione a instância do IIS que sincronizará assinaturas.

    2. Selecione Criar um novo diretório virtual.

    3. No painel inferior da página, expanda a instância do IIS, expanda Sites e clique em Site Padrão.

  6. Na página Informações do Diretório Virtual :

    1. Na caixa Alias, insira um alias para o diretório virtual.

    2. Na caixa Caminho , insira um caminho do diretório virtual. Por exemplo, se você inseriu websync1 na caixa Alias, insiraC:\Inetpub\wwwroot\websync1 na caixa Caminho . Clique em Próximo.

    3. Em ambas as caixas de diálogo, clique em Sim. Isso especifica que você deseja criar uma nova pasta e que deseja copiar a DLL da API do SQL Server Internet Server (ISAPI). .

  7. Na página Acesso Autenticado :

    1. Verifique se a autenticação integrada do Windows e a autenticação Digest para servidores de domínio do Windows estão desmarcadas.

    2. Selecione Autenticação Básica.

    3. Nas caixas Domínio Padrão e Realm, insira o domínio do computador que está executando o IIS.

  8. Na página Acesso ao Diretório :

    1. Clique em Adicionar e, na caixa de diálogo Selecionar Usuários ou Grupos , adicione as contas nas quais os Assinantes farão conexões com o IIS. Essas são as contas que você especificará na página Informações do Servidor Web do Assistente para Nova Assinatura ou como o valor do parâmetro sp_addmergepullsubscription_agent@internet_login .
  9. Na página Acesso ao Compartilhamento de Instantâneos , insira o compartilhamento de instantâneos. As permissões apropriadas são definidas nesse compartilhamento para que os Assinantes possam acessar os arquivos de snapshot. Para obter mais informações sobre permissões para o compartilhamento, consulte Proteger a Pasta de Instantâneo.

  10. Na página Concluir o Assistente, clique em Finalizar.

    Se ocorrer uma falha, como um erro de rede ao tentar configurar um computador remoto que está executando o IIS, todas as ações concluídas serão revertidas e todas as ações restantes serão canceladas. Se uma ação concluída não puder ser revertida, o status na página final do assistente exibirá Sucesso e as ações concluídas permanecerão confirmadas.

  11. Se o computador que está executando o IIS estiver em execução em uma versão de 64 bits do Windows, replisapi.dll deverá ser copiado para o diretório apropriado:

    1. Clique em Iniciar e em Executar. Na caixa Abrir , insira iisresete clique em OK.

    2. Depois que o IIS for interrompido e reiniciado, copie replisapi.dll da <unidade>:\Arquivos de Programas\Microsoft SQL Server\120\COM\replisapi para o diretório especificado na etapa 6b.

    3. Clique em Iniciar e em Executar. Na caixa Abrir , insira cmde clique em OK.

    4. No diretório especificado na etapa 6b, execute o seguinte comando:

      regsvr32 replisapi.dll

Configurando manualmente o computador que está executando o IIS

Para configurar o computador que está executando o IIS manualmente, você deve instalar e configurar o Ouvinte de Replicação do SQL Server e, em seguida, configurar a autorização para Assinantes que se conectarão ao IIS.

Para instalar e configurar o Ouvinte de Replicação do SQL Server

  1. Crie um diretório de arquivo no computador que está executando o IIS para conter replisapi.dll. Você pode criar o diretório onde quiser, mas recomendamos criá-lo no diretório <disco>:\Inetpub. Por exemplo, crie o diretório <drive>:\Inetpub\SQLReplication\.

    Importante

    É altamente recomendável criar esse diretório em uma partição do sistema de arquivos NTFS em vez de um sistema de arquivos FAT. Ao usar o sistema de arquivos NTFS, você pode usar permissões do sistema de arquivos NTFS para controlar precisamente os usuários que podem acessar a replicação do SQL Server.

  2. Copie replisapi.dll do diretório <unidade>:\Arquivos de Programas\Microsoft SQL Server\120\com\ para o diretório de arquivo que você criou na etapa 1.

  3. Registre replisapi.dll:

    1. Clique em Iniciar e em Executar. Na caixa Abrir , insira cmde clique em OK.

    2. No diretório que você criou na etapa 1, execute o seguinte comando:

      regsvr32 replisapi.dll

  4. Crie um novo site para replicação ou use um site existente. O site será acessado por componentes de replicação durante a sincronização. Para obter mais informações sobre como criar sites, consulte a documentação do IIS.

  5. Crie um diretório virtual em IIS. O diretório virtual deve ser criado no site que foi criado na etapa 4 e deve ser mapeado para o diretório que foi criado na etapa 1. Para obter mais informações sobre como criar diretórios virtuais, consulte a documentação do IIS. Recomendamos que você seja o mais restritivo possível ao atribuir permissões a esse diretório. Você deve selecionar as permissões de leitura e de execução, mas pode desmarcar as permissões de executar scripts, de gravar e de procurar.

  6. Configure o IIS para habilitar a execução de replisapi.dll. As permissões atribuídas na etapa 4 são suficientes para versões anteriores do IIS; no entanto, o IIS versão 6.0 requer que as extensões da API do Servidor da Internet (ISAPI) sejam habilitadas. Para obter mais informações, consulte "Configurando extensões ISAPI" e "Habilitando e desabilitando conteúdo dinâmico" na documentação do IIS 6.0.

Para configurar a autenticação do IIS

  • Quando os Assinantes se conectam ao IIS, o IIS deve autenticar os Assinantes antes que eles possam acessar recursos e processos. O IIS oferece três tipos de autenticação: Anônimo, Básico e Integrado. A autenticação pode ser aplicada para o site da Web inteiro ou para o diretório virtual que você criou.

    Recomendamos que você use a Autenticação Básica com SSL. O SSL é necessário, independentemente do tipo de autenticação usado. Para obter mais informações sobre como configurar a autenticação, consulte a documentação do IIS.

Definindo permissões para o Listener de replicação do SQL Server

Quando um Assinante se conecta ao computador que está executando o IIS, o Assinante é autenticado usando o tipo de autenticação especificado quando você configurou o IIS. Depois que o IIS autentica o Assinante, o IIS verifica se o Assinante está autorizado a invocar a replicação do SQL Server. Você controla os usuários que podem invocar a replicação do SQL Server definindo as permissões para replisapi.dll. É necessário configurar corretamente as permissões para impedir acesso não autorizado à replicação do SQL Server.

Para configurar as permissões mínimas para a conta sob a qual o SQL Server Replication Listener é executado, realize o procedimento a seguir. As etapas no procedimento se aplicam ao Microsoft Windows Server 2003 executando o IIS 6.0.

Além de realizar as etapas a seguir, certifique-se de que os logons necessários estão na lista de acesso à publicação (PAL). Para obter mais informações sobre a PAL, consulte Secure the Publisher (Proteger o publicador).

Para configurar a conta e as permissões

  1. Crie uma conta local no computador que está executando o IIS:

    1. Clique com o botão direito do mouse em Meu Computador e, em seguida, clique em Gerenciar.

    2. No Gerenciamento de Computadores, expanda Usuários e Grupos Locais.

    3. Clique com o botão direito em Usuários e então clique em Novo Usuário.

    4. Digite um nome de usuário e uma senha forte.

    5. Clique em Criar e clique em Fechar.

  2. Adicione a conta ao grupo IIS_WPG:

    1. No Gerenciamento de Computadores, expanda Usuários e Grupos Locais e clique em Grupos.

    2. Clique com o botão direito em IIS_WPG e clique em Adicionar ao Grupo.

    3. Na caixa de diálogo Propriedades do IIS_WPG , clique em Adicionar.

    4. Na caixa de diálogo Selecionar Usuários, Computadores ou Grupos , adicione a conta criada na etapa 1.

    5. Verifique se o nome no campo A partir desse local é o nome do computador local em vez de um domínio. Se o nome não for um computador local, clique em Locais. Na caixa de diálogo Locais , eleja o computador local e clique em OK.

    6. Na caixa de diálogo Selecionar Usuários e na caixa de diálogo Propriedades do IIS_WPG , clique em OK.

  3. Conceda à conta as permissões mínimas na pasta que contém replisapi.dll:

    1. Localize a pasta que você criou para replisapi.dll, clique com o botão direito do mouse na pasta e clique em Compartilhamento e Segurança.

    2. Na guia Segurança, clique em Adicionar.

    3. Na caixa de diálogo Selecionar Usuários, Computadores ou Grupos , adicione a conta que você criou na etapa 1.

    4. Verifique se o nome no campo A partir desse local é o nome do computador local em vez de um domínio. Se o nome não for um computador local, clique em Locais. Na caixa de diálogo Locais , selecione o computador local e clique em OK.

    5. Certifique-se de que à conta sejam concedidas somente as permissões de Leitura, Leitura & Execução e Listar Conteúdo da Pasta.

    6. Selecione os usuários ou grupos que não exigem acesso ao diretório e clique em Remover.

    7. Clique em OK.

  4. Crie um pool de aplicativos no Gerenciador dos Serviços de Informação de Internet (IIS):

    1. Clique em Iniciar e em Executar.

    2. Na caixa Abrir, digite inetmgr e clique em OK.

    3. No Gerenciador dos Serviços de Informações da Internet (IIS), expanda o nó do computador local.

    4. Clique com o botão direito do mouse em Pools de Aplicativos, aponte para Novo e clique em Pool de Aplicativos.

    5. Insira um nome para o pool no campo ID do pool de aplicativos e clique em OK.

  5. Associe a conta com o pool de aplicativos:

    1. No Gerenciador dos Serviços de Informações da Internet (IIS), expanda o nó do computador local e expanda pools de aplicativos.

    2. Clique com o botão direito do mouse no pool de aplicativos que você criou e clique em Propriedades.

    3. Na caixa de diálogo das Propriedades do <ApplicationPoolName>, na guia Identidade, clique em Configurável.

    4. Nos campos Nome de usuário e senha , insira a conta e a senha que foram criadas na etapa 1.

    5. Clique em OK.

  6. Associe o pool de aplicativos ao diretório virtual usado para sincronização da Web:

    1. No Gerenciador dos Serviços de Informações da Internet (IIS), expanda o nó do computador local e expanda os sites da Web.

    2. Expanda o site que você está usando para sincronização da Web, clique com o botão direito do mouse no diretório virtual criado para sincronização da Web e clique em Propriedades.

    3. Na guia Diretório Virtual da caixa de diálogo <Propriedades do VirtualDirectoryName>, na lista suspensa pool de aplicativos, selecione o pool de aplicativos criado na etapa 5.

    4. Clique em OK.

Testando a conexão com replisapi.dll

Execute a sincronização da Web no modo de diagnóstico para testar a conexão com o computador que está executando o IIS e verificar se o certificado SSL (Secure Sockets Layer) está instalado corretamente. Para executar a sincronização da Web em modo diagnóstico, você deve ser um administrador no computador que executa o IIS.

Para testar a conexão com replisapi.dll

  1. Certifique-se de que as configurações de rede local (LAN) no Assinante estão corretas:

    1. No Microsoft Internet Explorer, no menu Ferramentas , clique em Opções da Internet.

    2. Na guia Conexões , clique em Configurações da LAN.

    3. Se um servidor proxy não for usado na LAN, desmarque Detectar configurações automaticamente e Usar um servidor proxy para sua LAN.

    4. Se um servidor proxy for utilizado, selecione Usar um servidor proxy para sua LAN e Ignorar servidor proxy para endereços locais.

    5. Clique em OK.

  2. No Assinante, no Internet Explorer, conecte-se ao servidor em modo de diagnóstico adicionando ?diag ao endereço para o replisapi.dll. Por exemplo: https://server.domain.com/directory/replisapi.dll?diag.

  3. Se o certificado especificado para o IIS não for reconhecido pelo sistema operacional Windows, a caixa de diálogo Alerta de Segurança será exibida. Esse alerta pode ocorrer porque o certificado é um certificado de teste ou o certificado foi emitido por uma AC (autoridade de certificação) que o Windows não reconhece.

    Observação

    Se essa caixa de diálogo não aparecer, verifique se o certificado do servidor que você está acessando foi adicionado ao repositório de certificados no Assinante como um certificado confiável. Para obter mais informações sobre exportação de certificados, consulte a documentação do IIS.

    1. Na caixa de diálogo Alerta de Segurança , clique em Exibir Certificado.

    2. Na caixa de diálogo Certificado , na guia Geral , clique em Instalar Certificado.

    3. Conclua o Assistente para Importação de Certificados, aceitando os padrões.

    4. Na caixa de diálogo Aviso de Segurança , clique em Sim.

    5. Na caixa de diálogo de confirmação do Assistente de Importação de Certificado, clique em OK.

    6. Feche a caixa de diálogo Certificado .

    7. Na caixa de diálogo Alerta de Segurança , clique em Sim.

    Observação

    Os certificados serão instalados para os usuários. Esse processo deve ser executado para cada usuário que sincronizará com o IIS.

  4. Na caixa de diálogo Conectar ao <ServerName>, especifique o logon e a senha que o Agente de Mesclagem usará para se conectar ao IIS. Essas credenciais também serão especificadas no Assistente para Nova Assinatura.

  5. Na janela do Internet Explorer chamada informações de diagnóstico do SQL Websync, verifique se o valor em cada coluna Status na página é SUCCESS.

  6. Certifique-se de que o certificado está instalado corretamente no Assinante:

    1. Feche e depois reabra o Internet Explorer.

    2. Conecte ao servidor em modo diagnóstico. Se o certificado estiver instalado corretamente, a caixa de diálogo Alerta de Segurança não será exibida. Se a caixa de diálogo for exibida, o Merge Agent falhará quando tentar se conectar ao computador que está executando o IIS. Você deve verificar se o certificado do servidor que você está acessando foi adicionado ao repositório de certificados no Assinante como um certificado confiável. Para obter mais informações sobre exportação de certificados, consulte a documentação do IIS.

Consulte Também

Configurar a Sincronização da Web