Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los procedimientos de este tema constituyen el segundo paso para configurar la sincronización web para la replicación por fusión. Realice este paso después de habilitar una publicación para la sincronización web. Para obtener información general sobre el proceso de configuración, consulte Configuración de la sincronización web. Después de completar los procedimientos de este tema, continúe con el tercer paso, configurando una suscripción para usar la sincronización web. Este tercer paso se describe en los temas siguientes:
SQL Server Management Studio: Cómo configurar una suscripción para usar Sincronización Web (SQL Server Management Studio)
Programación de replicación Transact-SQL: Cómo configurar una suscripción para utilizar la sincronización web (Programación de replicación Transact-SQL)
RMO: Cómo configurar una suscripción para usar la sincronización web (Programación RMO)
La sincronización web utiliza un equipo que ejecuta Microsoft Internet Information Services (IIS) para sincronizar suscripciones de pull con publicaciones de combinación. Se admite la versión 5.0 de IIS, la versión 6.0 de IIS y la versión 7.0 de IIS. El Asistente para configurar sincronización web no se admite en la versión 7.0 de IIS.
Importante
Asegúrese de que la aplicación usa solo .NET Framework 2.0 o versiones posteriores, y que las versiones anteriores de .NET Framework no están instaladas en el servidor IIS. Las versiones anteriores de .NET Framework pueden producir errores. Estos incluyen lo siguiente: "El formato de un mensaje durante la sincronización web no era válido. Asegúrese de que los componentes de replicación estén configurados correctamente en el servidor web".
Precaución
No use tanto WebSync como ubicaciones de carpetas de instantáneas alternativas al mismo tiempo.
Para utilizar la sincronización web, debe configurar IIS mediante los siguientes pasos. Cada paso se describe en detalle en este tema.
Configurar Capa de Conexiones Seguras (SSL). SSL es necesario para la comunicación entre IIS y todos los suscriptores.
Instale los componentes de conectividad de Microsoft SQL Server en el equipo que ejecuta IIS mediante el Asistente para la instalación de SQL Server. Si tiene previsto usar el Asistente para configurar sincronización web que se menciona en el paso 3, también debe instalar SQL Server Management Studio en el equipo que ejecuta IIS.
Configure el equipo que ejecuta IIS para la sincronización web. Puede configurar el equipo manualmente o usar el Asistente para configurar sincronización web. Se recomienda usar el asistente.
Nota:
Si el equipo que ejecuta IIS se ejecuta en una versión de 64 bits de Windows, debe ejecutar el siguiente comando para asegurarse de que el servidor está configurado correctamente para ejecutar aplicaciones de API de Internet Server (ISAPI). Para más información, consulte la documentación de IIS.
cscript %SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1Establezca los permisos apropiados para el receptor de replicación de SQL Server.
Ejecute la sincronización web en modo de diagnóstico para probar la conexión al equipo que ejecuta IIS y para asegurarse de que el certificado SSL está instalado correctamente.
Configuración de la capa de sockets seguros (SSL)
Para configurar SSL, especifique un certificado para el equipo que ejecuta IIS que se va a usar. La sincronización web para la replicación de mezcla admite el uso de certificados de servidor, pero no certificados cliente. Para configurar IIS para implementación, primero debe obtener un certificado por parte de una entidad de certificación (CA). Una entidad de certificación es una entidad responsable de establecer y avalar la autenticidad de las claves de cifrado pública que pertenecen a usuarios, equipos u otras entidades de certificación. Para obtener más información acerca de los certificados, vea la documentación de IIS. Cuando el certificado esté instalado, debe asociarlo al sitio web que utiliza la sincronización web.
Para especificar un certificado para la implementación
Inicie sesión en el equipo que ejecuta IIS como administrador.
Inicie el Administrador de Internet Information Services (IIS):
Haga clic en Inicio y luego en Ejecutar.
En el cuadro Abrir, escriba
inetmgry, después, haga clic en Aceptar.
Ejecute el Asistente para certificados de IIS:
En el Administrador de Internet Information Services (IIS), expanda el nodo del equipo local y, a continuación, expanda la carpeta Sitios web .
Haga clic con el botón derecho en Sitio web predeterminado, y luego haga clic en Propiedades.
En el cuadro de diálogo Propiedades predeterminadas del sitio web , en la pestaña Seguridad del directorio , haga clic en Certificado de servidor.
Complete el Asistente para certificados de servidor web.
Haz clic en Aceptar.
Si no puede obtener un certificado de servidor de una entidad de certificación, puede especificar un certificado para las pruebas. Para configurar IIS 6.0 para pruebas, instale un certificado mediante la utilidad SelfSSL. Esta utilidad está disponible en el Kit de recursos de IIS 6.0. Puede descargar las herramientas desde el Centro de descarga de Microsoft. Para IIS 5.0, vaya a Ayuda y soporte técnico de Microsoft.
Nota:
Un certificado debe estar asociado a un sitio web para que ese sitio web pueda usar SSL. SelfSSL asocia automáticamente el certificado al sitio web predeterminado. Si ya tiene un certificado o instala un certificado más adelante desde una entidad de certificación, debe asociar explícitamente ese certificado al sitio web que usa la sincronización web. Asegúrese de que solo haya un certificado asociado al sitio web que se usa para sincronizar las suscripciones. Si hay varios certificados, el suscriptor usará el primer sitio web disponible.
Para especificar un certificado para realizar pruebas en IIS 6.0
Inicie sesión en el equipo que ejecuta IIS como administrador.
Descargue e instale SelfSSL. De forma predeterminada, la aplicación se instala en <drive>:\Program Files\IIS Resources\SelfSSL. Los métodos abreviados de aplicación y documentación se copian en <unidad>:\Documentos y configuración\Todos los usuarios\Menú Inicio\Programas\Recursos de IIS\SelfSSL.
Ejecute SelfSSL:
Para ejecutar SelfSSL con valores predeterminados para todos los parámetros, busque el directorio de instalación de la aplicación y, a continuación, haga doble clic en SelfSSL.exe.
Nota:
De forma predeterminada, el certificado instalado por SelfSSL es válido durante siete días.
Para especificar valores para uno o varios parámetros: haga clic en Inicio y, a continuación, haga clic en Ejecutar. En el cuadro Abrir , escriba
cmdy, a continuación, haga clic en Aceptar. Busque el directorio de instalación de SelfSSL, escribaSelfSSLy, a continuación, especifique valores para uno o varios parámetros. Para obtener una lista de parámetros, escribaSelfSSL -?.
Instalación de componentes de conectividad y SQL Server Management Studio
Para instalar componentes de conectividad de SQL Server y SQL Server Management Studio
Inicie sesión como administrador en el equipo que ejecuta IIS.
Desde el disco de instalación de SQL Server 2012, inicie el Asistente para instalación de SQL Server. Para obtener más información sobre el uso de este asistente, vea Instalar SQL Server 2014 desde el Asistente para la instalación (programa de instalación).
En la página Selección de características , seleccione Conectividad de herramientas de cliente.
Si tiene previsto usar el Asistente para configurar sincronización web, seleccione Herramientas de administración - Básico.
Complete el asistente y luego reinicie el equipo.
Nota:
Puede instalar componentes adicionales, pero solo se requieren los componentes de conectividad para la sincronización web.
Configuración del equipo que ejecuta IIS mediante el Asistente para configurar sincronización web
Configure el servidor IIS mediante el Asistente para configurar sincronización web o manualmente. Se recomienda usar el asistente, pero también se proporcionan pasos para la configuración manual en la sección siguiente. El Asistente para sincronización web que está disponible con SQL Server 2012 solo se puede usar para publicaciones creadas en un publicador que ejecuta SQL Server 2012 o un publicador que se actualizó a SQL Server 2012. No se puede usar el asistente para publicaciones en SQL Server 2005. El asistente se puede usar con suscripciones en SQL Server 2005 y versiones posteriores, y SQL Server Compact 3.5 3.0 y versiones posteriores.
La configuración tiene las siguientes características:
Usa el sitio web predeterminado en IIS. Sin embargo, puede usar otro sitio web. Para obtener más información sobre cómo crear sitios web, consulte la documentación de IIS.
Nota:
El sitio web que especifique proporciona acceso a los componentes que usa la sincronización web. El sitio web no proporciona acceso a otros datos o páginas web a menos que configure el sitio para hacerlo.
Crea un directorio virtual y su alias asociado. El alias se usa al acceder a los componentes de sincronización web. Por ejemplo, si la dirección IIS es
https://*server.domain.com*y especifica un alias de "websync1", la dirección para acceder al componente de replisapi.dll eshttps://*server.domain.com*/websync1/replisapi.dll.Usa la autenticación básica. Se recomienda usar la autenticación básica porque la autenticación básica permite ejecutar IIS y el publicador o distribuidor de SQL Server en equipos independientes (la configuración recomendada) sin necesidad de delegación de Kerberos. El uso de SSL con autenticación básica garantiza que los inicios de sesión, las contraseñas y todos los datos se cifren en tránsito. (Se requiere SSL, independientemente del tipo de autenticación que se use). Para obtener más información sobre los procedimientos recomendados para la sincronización web, vea la sección "Procedimientos recomendados de seguridad para la sincronización web" en Configurar sincronización web.
Para configurar el equipo que ejecuta IIS mediante el Asistente para configurar sincronización web
En el equipo que ejecuta IIS, inicie SQL Server Management Studio.
Conéctese al publicador y, a continuación, expanda el nodo del servidor.
Expanda la carpeta Publicaciones locales , haga clic con el botón derecho en la publicación y, a continuación, haga clic en Configurar sincronización web.
En el Asistente para configurar sincronización web, en la página Tipo de suscriptor , seleccione SQL Server.
En la página Servidor web :
Seleccione la instancia de IIS que sincronizará las suscripciones.
Seleccione Crear un nuevo directorio virtual.
En el panel inferior de la página, expanda la instancia de IIS, expanda Sitios web y, a continuación, haga clic en Sitio web predeterminado.
En la página Información del directorio virtual :
En el cuadro Alias , escriba un alias para el directorio virtual.
En el cuadro Ruta de acceso , escriba una ruta de acceso del directorio virtual. Por ejemplo, si escribió
websync1en el cuadro Alias , escribaC:\Inetpub\wwwroot\websync1en el cuadro Ruta de acceso . Haga clic en Next.En ambos cuadros de diálogo, haga clic en Sí. Esto especifica que desea crear una nueva carpeta y copiar el archivo DLL de la API ISAPI del servidor de Internet de SQL Server. .
En la página Acceso autenticado :
Asegúrese de que se borran la autenticación integrada de Windows y la autenticación implícita para los servidores de dominio de Windows .
Seleccione Autenticación básica.
En los cuadros Dominio predeterminado y Realm, escriba el dominio del equipo que ejecuta IIS.
En la página Acceso al directorio :
- Haga clic en Agregar y, a continuación, en el cuadro de diálogo Seleccionar usuarios o grupos , agregue las cuentas en las que los suscriptores realizarán conexiones a IIS. Estas son las cuentas que especificará en la página Información del servidor web del Asistente para nueva suscripción o como valor del parámetro sp_addmergepullsubscription_agent@internet_login .
En la página de Acceso al recurso compartido de instantáneas, introduzca el recurso compartido de instantáneas. Los permisos adecuados se establecen en este recurso compartido para que los suscriptores puedan acceder a los archivos de instantáneas. Para obtener más información sobre los permisos para el recurso compartido, consulte Protección de la carpeta de instantáneas.
En la página Finalización del Asistente , haga clic en Finalizar.
Si se produce un error, como un error de red al intentar configurar un equipo remoto que ejecuta IIS, se revierten todas las acciones completadas y se cancelan todas las acciones restantes. Si no se puede revertir una acción completada, el estado de la página final del asistente muestra Éxito y las acciones completadas permanecen confirmadas.
Si el equipo que ejecuta IIS se ejecuta en una versión de 64 bits de Windows, replisapi.dll debe copiarse en el directorio adecuado:
Haga clic en Inicio y luego en Ejecutar. En el cuadro Abrir , escriba
iisresety, a continuación, haga clic en Aceptar.Después de que IIS se detenga y reinicie, copie replisapi.dll de <la unidad>:\Archivos de programa\Microsoft SQL Server\120\COM\replisapi en el directorio especificado en el paso 6b.
Haga clic en Inicio y luego en Ejecutar. En el cuadro Abrir , escriba
cmdy, a continuación, haga clic en Aceptar.En el directorio que especificó en el paso 6b, ejecute el siguiente comando:
regsvr32 replisapi.dll
Configuración manual del equipo que ejecuta IIS
Para configurar manualmente el equipo que ejecuta IIS, debe instalar y configurar el Servicio de Escucha de Replicación de SQL Server y, a continuación, configurar los permisos para los suscriptores que se conectarán a IIS.
Para instalar y configurar el Servicio de Escucha de Replicación de SQL Server
Cree un directorio de archivos en el equipo que ejecuta IIS para contener replisapi.dll. Puede crear el directorio donde desee, pero recomendamos crearlo en el directorio <unidad>:\Inetpub. Por ejemplo, cree el directorio <unidad>:\Inetpub\SQLReplication\.
Importante
Se recomienda encarecidamente crear este directorio en una partición del sistema de archivos NTFS en lugar de un sistema de archivos FAT. Cuando se usa el sistema de archivos NTFS, puede usar permisos del sistema de archivos NTFS para controlar con precisión los usuarios que pueden acceder a la replicación de SQL Server.
Copie replisapi.dll desde el directorio <unidad>:\Archivos de programa\Microsoft SQL Server\120\com\ al directorio de archivos que creó en el paso 1.
Registre el archivo replisapi.dll:
Haga clic en Inicio y luego en Ejecutar. En el cuadro Abrir , escriba
cmdy, a continuación, haga clic en Aceptar.En el directorio que creó en el paso 1, ejecute el siguiente comando:
regsvr32 replisapi.dll
Cree un sitio web para la replicación o use un sitio existente. Los componentes de replicación tendrán acceso al sitio web durante la sincronización. Para obtener más información sobre cómo crear sitios web, consulte la documentación de IIS.
Cree un directorio virtual en IIS. El directorio virtual se debe crear en el sitio web que se creó en el paso 4 y se debe asignar al directorio que se creó en el paso 1. Para más información sobre cómo crear directorios virtuales, consulte la documentación de IIS. Se recomienda que sea lo más restrictivo posible cuando asigne permisos a este directorio. Debe seleccionar Permisos de lectura y ejecución , pero puede borrar Los permisos Ejecutar scripts, Escribir y Examinar .
Configure IIS para permitir la ejecución de replisapi.dll. Los permisos asignados en el paso 4 son suficientes para versiones anteriores de IIS; Sin embargo, la versión 6.0 de IIS requiere que se habiliten las extensiones de LA API de Internet Server (ISAPI). Para obtener más información, vea "Configuración de extensiones ISAPI" y "Habilitación y deshabilitación de contenido dinámico" en la documentación de IIS 6.0.
Para configurar la autenticación de IIS
Cuando los suscriptores se conectan a IIS, IIS debe autenticar a los suscriptores para poder acceder a recursos y procesos. IIS ofrece tres tipos de autenticación: Anónimo, Básico e Integrado. La autenticación se puede aplicar a todo el sitio web o al directorio virtual que ha creado.
Se recomienda usar la autenticación básica con SSL. SSL es necesario, independientemente del tipo de autenticación que se use. Para obtener más información sobre cómo configurar la autenticación, consulte la documentación de IIS.
Establecer permisos para el agente de escucha de replicación de SQL Server
Cuando un suscriptor se conecta al equipo que ejecuta IIS, el suscriptor se autentica mediante el tipo de autenticación que se especificó al configurar IIS. Después de autenticar IIS al suscriptor, IIS comprueba si el suscriptor está autorizado para invocar la replicación de SQL Server. Debe controlar los usuarios que pueden invocar la replicación de SQL Server estableciendo permisos para replisapi.dll. Es necesario configurar permisos para impedir el acceso no autorizado a la replicación de SQL Server.
Para configurar permisos mínimos para la cuenta bajo la cual se ejecuta el Oyente de replicación de SQL Server, complete el siguiente procedimiento. Los pasos del procedimiento se aplican a Microsoft Windows Server 2003 que ejecuta IIS 6.0.
Además de llevar a cabo los pasos siguientes, asegúrese de que las credenciales de acceso necesarias están en la lista de acceso a la publicación (PAL). Para obtener más información sobre la PAL, vea Secure the Publisher (Proteger el publicador).
Para configurar la cuenta y los permisos
Cree una cuenta local en el equipo que ejecuta IIS:
Haga clic con el botón secundario en Mi PC y, a continuación, haga clic en Administrar.
En Administración de equipos, expanda Usuarios y grupos locales.
Haga clic con el botón secundario en Usuarios y haga clic en Nuevo usuario.
Escriba un nombre de usuario y una contraseña segura.
Haga clic en Creary, a continuación, haga clic en Cerrar.
Agregue la cuenta al grupo de IIS_WPG:
En Administración de equipos, expanda Usuarios y grupos locales y, a continuación, haga clic en Grupos.
Haga clic con el botón derecho en IIS_WPG y, a continuación, haga clic en Agregar al grupo.
En el cuadro de diálogo Propiedades de IIS_WPG , haga clic en Agregar.
En el cuadro de diálogo Seleccionar usuarios, equipos o grupos , agregue la cuenta que creó en el paso 1.
Asegúrese de que el nombre del campo Desde esta ubicación es el nombre del equipo local en lugar de un dominio. Si el nombre no es un equipo local, haga clic en Ubicaciones. En el cuadro de diálogo Ubicaciones , elija el equipo local y, a continuación, haga clic en Aceptar.
En el cuadro de diálogo Seleccionar usuarios y el cuadro de diálogo Propiedades de IIS_WPG , haga clic en Aceptar.
Conceda los permisos mínimos en la carpeta que contiene replisapi.dll a la cuenta :
Busque la carpeta que creó para replisapi.dll, haga clic con el botón derecho en la carpeta y, a continuación, haga clic en Uso compartido y seguridad.
En la pestaña Seguridad, haga clic en Agregar.
En el cuadro de diálogo Seleccionar usuarios, equipos o grupos , agregue la cuenta que creó en el paso 1.
Asegúrese de que el nombre del campo Desde esta ubicación es el nombre del equipo local en lugar de un dominio. Si el nombre no es un equipo local, haga clic en Ubicaciones. En el cuadro de diálogo Ubicaciones , seleccione el equipo local y, a continuación, haga clic en Aceptar.
Asegúrese de que a la cuenta solo se le conceden permisos de lectura, lectura y ejecución y contenido de carpetas de lista .
Seleccione los usuarios o grupos que no requieran acceso al directorio y, a continuación, haga clic en Quitar.
Haz clic en Aceptar.
Cree un grupo de aplicaciones en Administrador de Internet Information Services (IIS):
Haga clic en Inicio y luego en Ejecutar.
En el cuadro Abrir, escriba
inetmgry, después, haga clic en Aceptar.En el Administrador de Servicios de Información de Internet (IIS), expanda el nodo equipo local.
Haga clic con el botón derecho en Grupos de aplicaciones, seleccione Nuevo y, a continuación, haga clic en Grupo de aplicaciones.
Escriba un nombre para el grupo en el campo Id. del grupo de aplicaciones y, a continuación, haga clic en Aceptar.
Asocie la cuenta al grupo de aplicaciones:
En el Administrador de Internet Information Services (IIS), expanda el nodo del equipo local y, a continuación, expanda Grupos de aplicaciones.
Haga clic con el botón derecho en el grupo de aplicaciones que creó y, a continuación, haga clic en Propiedades.
En el cuadro de diálogo <ApplicationPoolName> Propiedades, en la pestaña Identidad, haga clic en Configurable.
En los campos Nombre de usuario y contraseña , escriba la cuenta y la contraseña que se crearon en el paso 1.
Haz clic en Aceptar.
Asocie el grupo de aplicaciones al directorio virtual que se usa para la sincronización web:
En el Administrador de Internet Information Services (IIS), expanda el nodo del equipo local y, a continuación, expanda Sitios web.
Expanda el sitio web que usa para la sincronización web, haga clic con el botón derecho en el directorio virtual que creó para la sincronización web y, a continuación, haga clic en Propiedades.
En la pestaña Directorio virtual del cuadro de diálogo Propiedades de <VirtualDirectoryName>, en la lista desplegable Grupo de aplicaciones, seleccione el grupo de aplicaciones que se creó en el paso 5.
Haz clic en Aceptar.
Probar la conexión a replisapi.dll
Ejecute la sincronización web en modo de diagnóstico para probar la conexión al equipo que ejecuta IIS y para asegurarse de que el certificado capa de sockets seguros (SSL) esté instalado correctamente. Para ejecutar la sincronización web en modo de diagnóstico, debe ser administrador en el equipo donde se ejecuta IIS.
Para probar la conexión a replisapi.dll
Asegúrese de que la configuración de red de área local (LAN) del suscriptor es correcta:
En Microsoft Internet Explorer, en el menú Herramientas , haga clic en Opciones de Internet.
En la pestaña Conexiones , haga clic en Configuración de LAN.
Si no se usa un servidor proxy en la LAN, desactive Detectar automáticamente la configuración y use un servidor proxy para la LAN.
Si se usa un servidor proxy, seleccione Usar un servidor proxy para la LAN y Omitir el servidor proxy para las direcciones locales.
Haz clic en Aceptar.
En el suscriptor, en Internet Explorer, conéctese al servidor en modo de diagnóstico agregando
?diaga la dirección de replisapi.dll. Por ejemplo:https://server.domain.com/directory/replisapi.dll?diag.Si el sistema operativo Windows no reconoce el certificado especificado para IIS, aparece el cuadro de diálogo Alerta de seguridad . Esta alerta puede producirse porque el certificado es un certificado de prueba o el certificado lo emitió una entidad de certificación (CA) que Windows no reconoce.
Nota:
Si este cuadro de diálogo no aparece, asegúrese de que el certificado del servidor al que accede se ha agregado al almacén de certificados en el suscriptor como un certificado de confianza. Para obtener más información acerca de la exportación de certificados, vea la documentación de IIS.
En el cuadro de diálogo Alerta de seguridad , haga clic en Ver certificado.
En el cuadro de diálogo Certificado , en la pestaña General , haga clic en Instalar certificado.
Complete el Asistente para importación de certificados, aceptando los valores predeterminados.
En el cuadro de diálogo Advertencia de seguridad , haga clic en Sí.
En el cuadro de diálogo de confirmación del Asistente para importación de certificados, haga clic en Aceptar.
Cierre el cuadro de diálogo Certificado .
En el cuadro de diálogo Alerta de seguridad , haga clic en Sí.
Nota:
Los certificados los instalan los usuarios. Este proceso lo deben realizar todos los usuarios que vayan a realizar sincronizaciones con IIS.
En el cuadro de diálogo Conectarse a <ServerName>, especifique el nombre de usuario y la contraseña que el Agente de Mezcla usará para conectarse a IIS. Estas credenciales también se especificarán en el Asistente para nueva suscripción.
En la ventana de Internet Explorer denominada información de diagnóstico de SQL Websync, compruebe que el valor de cada columna Estado de la página es SUCCESS.
Compruebe que el certificado se haya instalado correctamente en el suscriptor:
Cierre y vuelva a abrir Internet Explorer.
Conéctese al servidor en modo de diagnóstico. Si el certificado está instalado correctamente, no aparecerá el cuadro de diálogo Alerta de seguridad . Si aparece el cuadro de diálogo, se producirá un error en el Agente de mezcla cuando intente conectarse al equipo que ejecuta IIS. Debe asegurarse de que el certificado del servidor al que está accediendo se ha agregado al almacén de certificados del Suscriptor como un certificado de confianza. Para obtener más información acerca de la exportación de certificados, vea la documentación de IIS.