Как настроить сервер IIS для веб-синхронизации

Описанные в данном разделе процедуры составляют второй этап настройки веб-синхронизации при репликации слиянием. Эти процедуры выполняют после включения веб-синхронизации для публикации. Обзор этого процесса настройки см. в разделе Настройка веб-синхронизации. После завершения выполнения процедур, описанных в этом разделе, перейдите к третьему этапу — настройке подписки для использования веб-синхронизации. Этот этап описывается в следующих разделах:

Веб-синхронизация использует сервер служб Microsoft IIS для синхронизации подписок по запросу на публикации слиянием. Поддерживаются службы IIS версий 5.0, 6.0 и IIS 7.0. Мастер настройки веб-синхронизации не поддерживается в версии IIS 7.0.

Важное примечаниеВажно!

Убедитесь в том, что приложение использует только .NET Framework 2.0 или более позднюю версию, а более ранние версии .NET Framework на IIS-сервере не установлены. Более ранние версии .NET Framework могут вызывать ошибки. К ним относятся: «Недопустимый формат сообщения во время веб-синхронизации. Убедитесь в том, что компоненты репликации на веб-сервере настроены правильно».

Чтобы использовать веб-синхронизацию, необходимо настроить службы IIS, выполнив следующие шаги. Каждый шаг подробно описан в данном разделе.

  1. Настройте протокол SSL (Secure Sockets Layer). Протокол SSL необходим для связи между сервером IIS и всеми подписчиками.

  2. Установите сетевые компоненты Microsoft SQL Server на сервере IIS с помощью мастера установки SQL Server. Если планируется использовать мастер настройки веб-синхронизации, упомянутый в шаге 3, то также необходимо установить среду Среда SQL Server Management Studio на сервер IIS.

  3. Настройте сервер IIS для проведения веб-синхронизации. Можно выполнить настройку вручную или использовать мастер настройки веб-синхронизации. Рекомендуется использовать мастер настройки веб-синхронизации.

    ПримечаниеПримечание

    Если сервер служб IIS работает под управлением 64-разрядной версии Windows, необходимо выполнить следующую команду, чтобы убедиться, что этот сервер правильно настроен для запуска приложений ISAPI. Дополнительные сведения см. в документации служб IIS.

    cscript %SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1
    
  4. Установите нужные разрешения для средства прослушивания репликации SQL Server.

  5. Запустите веб-синхронизацию в диагностическом режиме, чтобы проверить соединение с сервером IIS и убедиться, что SSL-сертификат установлен правильно.

Настройка протокола SSL

Чтобы настроить протокол SSL, укажите сертификат, который будет использоваться сервером IIS. Веб-синхронизация для репликации слиянием поддерживает использование серверных сертификатов, а не клиентских. Чтобы настроить службы IIS для развертывания, необходимо вначале получить сертификат из центра сертификации (certification authority, CA). Центр сертификации — это организация, отвечающая за установку и документальное подтверждение подлинности открытых ключей шифрования, принадлежащих пользователям, компьютерам и другим центрам сертификации. Дополнительные сведения о сертификатах см. в документации по службам IIS. После установки сертификата необходимо связать сертификат с веб-сайтом, который используется веб-синхронизацией.

Указание сертификата для развертывания

  1. Войдите на сервер IIS под учетной записью администратора.

  2. Запустите диспетчер служб IIS:

    1. Нажмите кнопку Пуск, затем щелкните Выполнить.

    2. В поле Открыть введите inetmgr и нажмите кнопку ОК.

  3. Запустите мастер сертификатов служб IIS:

    1. В окне Диспетчер служб IIS раскройте узел локальный компьютер, а затем — папку Веб-сайты.

    2. Щелкните правой кнопкой Веб-сайт по умолчанию и выберите Свойства.

    3. В диалоговом окне Свойства веб-сайта по умолчанию на вкладке Безопасность каталогов щелкните Сертификат сервера.

    4. Выполните все указания мастера сертификатов веб-сервера

  4. Нажмите кнопку ОК

Если не удается получить сертификат от центра сертификации, можно указать сертификат для тестирования. Чтобы настроить службы IIS 6.0 для тестирования, установите сертификат с помощью программы SelfSSL. Эта программа доступна в IIS 6.0 Resource Kit. Инструменты можно загрузить в центре загрузки Майкрософт. Дополнительные сведения об использовании служб IIS версии 5.0 см. на веб-сайте справки и поддержки Майкрософт.

ПримечаниеПримечание

Сертификат должен быть связан с веб-сайтом, прежде чем этот сайт сможет использовать протокол SSL. Программа SelfSSL автоматически связывает сертификат с веб-сайтом по умолчанию. Если сертификат уже имеется или будет установлен позже из центра сертификации, то необходимо явно связать этот сертификат с веб-сайтом, который используется для веб-синхронизации. Убедитесь, что существует только один сертификат, связанный с веб-сайтом, который используется для синхронизации подписок. Если имеется несколько сертификатов, подписчик будет использовать первый доступный веб-сайт.

Указание сертификата для тестирования в службах IIS 6.0

  1. Войдите на сервер IIS под учетной записью администратора.

  2. Загрузите и установите программу SelfSSL. По умолчанию она устанавливается в папку <диск>:\Program Files\IIS Resources\SelfSSL. Ярлыки программы и документации копируются в папку <диск>:\Documents and Settings\All Users\Start Menu\Programs\IIS Resources\SelfSSL.

  3. Запустите SelfSSL:

    • Чтобы запустить SelfSSL со значениями по умолчанию для всех параметров, найдите каталог установки этой программы, а затем дважды щелкните файл SelfSSL.exe.

      ПримечаниеПримечание

      По умолчанию сертификат, устанавливаемый программой SelfSSL, действителен в течение семи дней.

    • Чтобы задать значения для одного или нескольких параметров, нажмите кнопку Пуск, затем выберите пункт Выполнить. В поле Открыть введите cmd и нажмите кнопку ОК. Найдите каталог установки программы SelfSSL, введите SelfSSL, а затем задайте значения для одного или нескольких параметров. Для просмотра списка параметров введите команду SelfSSL -?.

Установка сетевых компонентов и среды SQL Server Management Studio

Установка сетевых компонентов SQL Server и среды SQL Server Management Studio

  1. Войдите на компьютер, где работает IIS под учетной записью администратора.

  2. С установочного диска SQL Server 2008 запустите мастер установки SQL Server. Дополнительные сведения об использовании этого мастера см. в разделе Как установить SQL Server 2008 R2 (программа установки).

  3. На странице Выбор компонентов выберите Средства связи клиентских средств.

  4. Если планируется использовать мастер настройки веб-синхронизации, то выберите Средства управления — основные.

  5. Выполните все инструкции мастера и перезапустите компьютер.

    ПримечаниеПримечание

    Можно установить дополнительные компоненты, но для веб-синхронизации требуются только сетевые компоненты.

Настройка сервера IIS с помощью мастера настройки веб-синхронизации

Настройте сервер IIS вручную или с помощью мастера настройки веб-синхронизации. Рекомендуется использовать мастер настройки, несмотря на это, в следующем разделе содержатся инструкции по настройке вручную. Мастер веб-синхронизации SQL Server 2008 может использоваться только для публикаций, созданных на издателе, на котором работает SQL Server 2008, или на издателе, обновленном до уровня SQL Server 2008. Мастер нельзя использовать для публикаций на SQL Server 2005. Мастер можно использовать при работе с подписками на SQL Server 2005 и более поздних версиях, а также на SQL Server Compact 3.5 3.0 и более поздних версиях.

Эта конфигурация имеет следующие характеристики.

  • Использует веб-сайт по умолчанию в IIS. Однако можно использовать другой веб-сайт. Дополнительные сведения о том, как создать веб-сайт, содержатся в документации по службам IIS.

    ПримечаниеПримечание

    Заданный веб-сайт обеспечивает доступ к компонентам, которые используются при веб-синхронизации. Веб-сайт не предоставляет доступ к другим данным или веб-страницами, если его не настроить соответствующим образом.

  • Создает виртуальный каталог и связанный с ним псевдоним. Этот псевдоним используется при доступе к компонентам веб-синхронизации. Например, если адрес сервера IIS — https://server.domain.com и задается псевдоним «websync1», то адресом доступа к компоненту replisapi.dll будет https://server.domain.com/websync1/replisapi.dll.

  • Использует обычную проверку подлинности. Рекомендуется использовать процедуру обычной проверки подлинности, поскольку она позволяет запускать сервер IIS и издатель/распространитель SQL Server на отдельных компьютерах (рекомендованная конфигурация) без делегирования Kerberos. Использование протокола SSL в сочетании с обычной проверкой подлинности обеспечивает шифрование имен входа, паролей и всех данных в процессе передачи. (SSL требуется, независимо от типа используемой проверки подлинности.) Дополнительные сведения о рекомендациях по веб-синхронизации см. в подразделе «Рекомендации по мерам безопасности для веб-синхронизации» раздела Настройка веб-синхронизации.

Настройка сервера IIS с помощью мастера настройки веб-синхронизации

  1. На сервере IIS запустите среду Среда SQL Server Management Studio.

  2. Подключитесь к издателю и разверните узел сервера.

  3. Раскройте папку Локальные публикации, щелкните правой кнопкой мыши нужную публикацию и выберите Настроить веб-синхронизацию.

  4. В мастере настройки веб-синхронизации на странице Тип подписчика выберите SQL Server.

  5. На странице Веб-сервер выполните следующие действия:

    1. Выберите экземпляр сервер IIS, который будет синхронизировать подписки.

    2. Выберите Создать новый виртуальный каталог.

    3. В нижней панели страницы разверните экземпляр сервера IIS, раскройте Веб-сайты и щелкните Веб-сайт по умолчанию.

  6. На странице Сведения виртуального каталога выполните следующие действия:

    1. Введите псевдоним виртуального каталога в поле Псевдоним.

    2. Введите путь виртуального каталога в поле Путь. Например, если в поле Псевдоним введено websync1, то в поле Путь нужно ввести C:\Inetpub\wwwroot\websync1. Нажмите кнопку Далее.

    3. В обоих диалоговых окнах нажмите кнопку Да. Это означает, что нужно создать новую папку и скопировать SQL Server Internet Server API (ISAPI) DLL. .

  7. На странице Доступ с проверкой подлинности выполните следующие действия:

    1. Убедитесь, что сняты флажки Встроенная проверка подлинности Windows и Краткая проверка для серверов доменов Windows.

    2. Установите флажок Обычная проверка подлинности.

    3. В полях Домен по умолчанию и Область введите имя домена, в котором развернут сервер IIS.

  8. На странице Доступ к каталогам выполните следующие действия:

    1. Нажмите кнопку Добавить и в диалоговом окне Выбор пользователей или групп добавьте учетные записи, с которыми подписчик будет подключаться к серверу IIS. Эти учетные записи указываются на странице Данные о веб-сервере мастера создания подписки или в значении sp_addmergepullsubscription_agent параметра @internet_login.
  9. На странице Общий доступ к хранилищу моментальных снимков укажите общую папку моментальных снимков. Устанавливаются соответствующие разрешения для этой общей папки, чтобы подписчики могли получить доступ к файлам моментальных снимков. Дополнительные сведения о разрешениях для общей папки см. в разделе Защита папки моментальных снимков.

  10. На странице Завершение работы мастера нажмите кнопку Готово.

    Если во время настройки удаленного сервера IIS произойдет ошибка, например ошибка в сети, то по всем выполненным действиям выполняется откат, а оставшиеся действия отменяются. Если для выполненного действия не удается выполнить откат, на последней странице мастера отображается состояние Успешно, а выполненные действия остаются зафиксированными.

  11. Если службы IIS работают на компьютере под управлением 64-разрядной версии Windows, библиотека replisapi.dll должна быть скопирована в соответствующий каталог.

    1. Нажмите кнопку Пуск, затем выберите пункт Выполнить. В поле Открыть введите iisreset и нажмите кнопку ОК.

    2. После остановки и перезапуска служб IIS скопируйте файл replisapi.dll из расположения <диск>:\Program Files\Microsoft SQL Server\100\COM\replisapi в каталог, указанный в шаге 6б.

    3. Нажмите кнопку Пуск, затем щелкните Выполнить. В поле Открыть введите cmd и нажмите кнопку ОК.

    4. В каталоге указанном на шаге 6б выполните следующую команду:

      regsvr32 replisapi.dll

Ручная настройка сервера IIS

Для ручной настройки сервера IIS необходимо установить и настроить средство прослушивания репликации SQL Server, а затем настроить авторизацию для подписчиков, которые подключаются к серверу IIS.

Установка и настройка средства прослушивания репликации SQL Server

  1. Создайте на компьютере, где работают службы IIS, каталог для файла replisapi.dll. Каталог можно создать в любом месте, но рекомендуется разместить его в каталоге <диск>:\Inetpub. Например, создайте каталог <диск>:\Inetpub\SQLReplication\.

    Важное примечаниеВажно!

    Настоятельно рекомендуется создавать этот каталог в разделе жесткого диска с файловой системой NTFS, а не с файловой системой FAT. При выборе файловой системы NTFS для точного управления доступом пользователей к репликации SQL Server можно использовать разрешения файловой системы NTFS.

  2. Скопируйте файл replisapi.dll из каталога <диск>:\Program Files\Microsoft SQL Server\100\com\ в каталог с файлами, созданный на шаге 1.

  3. Зарегистрируйте файл replisapi.dll:

    1. Нажмите кнопку Пуск, затем выберите пункт Выполнить. В поле Открыть введите cmd и нажмите кнопку ОК.

    2. В каталоге созданном на шаге 1 выполните следующую команду:

      regsvr32 replisapi.dll

  4. Создайте новый веб-сайт для репликации или воспользуйтесь уже существующим. Во время синхронизации компоненты репликации будут обращаться к этому веб-сайту. Дополнительные сведения о том, как создавать веб-сайты, содержатся в документации по службам IIS.

  5. Создайте виртуальный каталог в службах IIS. Виртуальный каталог должен быть создан на веб-узле, созданном на шаге 4, и сопоставлен с каталогом, созданным на шаге 1. Дополнительные сведения о создании виртуальных каталогов см. в документации по службам IIS. При назначении разрешений для этого каталога рекомендуется установить максимальные ограничения. Необходимо установить разрешения Чтение и Выполнить, при этом разрешения Запуск сценариев, Запись и Обзор можно отменить.

  6. Установите в настройках служб IIS разрешение выполнять файл replisapi.dll. Для предыдущих версий служб IIS достаточно разрешений, назначенных на шаге 4, однако для служб IIS 6.0 необходимо включить модули Internet Server API (ISAPI). Дополнительные сведения см. в разделах «Настройка модулей ISAPI» и «Включение и выключение динамического содержимого» документации по службам IIS 6.0.

Настройка проверки подлинности службами IIS

  • При подключении подписчиков к серверу IIS службы IIS должны проверить подлинность подключаемых подписчиков перед предоставлением им доступа к ресурсам и процессам. Службы IIS выполняют три типа проверки подлинности: анонимную, обычную и встроенную. Проверка подлинности может выполняться для всего веб-сайта или для созданного виртуального каталога.

    Рекомендуется использовать процедуру обычной проверки подлинности в сочетании с протоколом SSL. Протокол SSL должен использоваться вне независимости от типа применяемой проверки подлинности. Дополнительные сведения о настройке проверки подлинности см. в документации по службам IIS.

Установка разрешений для средства прослушивания репликации SQL Server

При подключении подписчика к серверу IIS проверка подлинности подписчика производится с помощью типа проверки подлинности, который был задан при настройке служб IIS. После проверки подлинности подписчика службы IIS проверяют, обладает ли подписчик правами для вызова репликации SQL Server. Задание разрешений на файл replisapi.dll позволяет определить пользователей, которые получают возможность запускать репликацию SQL Server. Правильная настройка разрешений необходима для предотвращения несанкционированного доступа к репликации SQL Server.

Чтобы установить минимальные разрешения для учетной записи, под которой может запускаться средство прослушивания репликации SQL Server, выполните следующую процедуру. Шаги, описанные в этой процедуре, применимы к Microsoft Windows Server 2003, на котором установлены службы IIS 6.0.

Помимо выполнения следующих шагов, убедитесь в том, что все необходимые имена входа содержатся в списке доступа к публикации (PAL). Дополнительные сведения о списке доступа к публикации см. в разделе Организация безопасности издателя.

Настройка учетной записи и разрешений

  1. На сервере IIS создайте локальную учетную запись:

    1. Щелкните правой кнопкой мыши Мой компьютер, затем выберите Управление.

    2. В окне Управление компьютером раскройте Локальные пользователи и группы.

    3. Щелкните правой кнопкой мыши значок Пользователи, а затем выберите Новый пользователь….

    4. Введите имя пользователя и надежный пароль.

    5. Нажмите кнопку Создать, а затем кнопку Закрыть.

  2. Добавьте учетную запись в группу IIS_WPG:

    1. В окне Управление компьютером раскройте Локальные пользователи и группы, затем выберите Группы.

    2. Щелкните правой кнопкой мыши IIS_WPG, а затем щелкните Добавить в группу.

    3. В диалоговом окне Свойства: IIS_WPG щелкните Добавить....

    4. В диалоговом окне Выбор: Пользователи, Компьютеры или Группы добавьте учетную запись, созданную на шаге 1.

    5. Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если это не имя локального компьютера, то нажмите кнопку Расположение.... В диалоговом окне Расположение... выберите локальный компьютер, а затем нажмите кнопку ОК.

    6. В диалоговых окнах Выбор пользователей и Свойства: IIS_WPG нажмите кнопку ОК.

  3. Предоставьте учетной записи минимальные разрешения для доступа к папке, содержащей библиотеку replisapi.dll:

    1. Найдите место расположения каталога, созданного для файла replisapi.dll, щелкните правой кнопкой мыши этот каталог, а затем выберите Общий доступ и безопасность.

    2. На вкладке Безопасность нажмите Добавить.

    3. В диалоговом окне Выбор: Пользователи, Компьютеры или Группы добавьте учетную запись, созданную на шаге 1.

    4. Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если это не имя локального компьютера, то нажмите кнопку Расположение.... В диалоговом окне Расположение... выберите локальный компьютер, а затем нажмите кнопку ОК.

    5. Убедитесь, что для учетной записи предоставлены только разрешения: Чтение, Чтение и выполнение и Просмотр содержимого папок.

    6. Выберите пользователей и группы, которым не требуется доступ к этому каталогу, и нажмите Удалить.

    7. Нажмите кнопку ОК

  4. Создайте пул приложений в диспетчере служб IIS:

    1. Нажмите кнопку Пуск, затем выберите пункт Выполнить.

    2. В поле Открыть введите inetmgr и нажмите кнопку ОК.

    3. В диспетчере служб IIS раскройте узел Локальный компьютер.

    4. Щелкните правой кнопкой мыши Пулы приложений, выберите пункт Создать, а затем выберите Пул приложений.

    5. Введите имя пула в поле Идентификатор пула приложений и нажмите кнопку ОК.

  5. Свяжите учетную запись с этим пулом приложений:

    1. В диспетчере служб IIS раскройте узел Локальный компьютер, затем — Пулы приложений.

    2. Щелкните правой кнопкой мыши созданный пул приложений, а затем выберите Свойства.

    3. В диалоговом окне Свойства <ИмяПулаПриложений> на вкладке Удостоверение щелкните Настраиваемый.

    4. В полях Имя пользователя и Пароль введите имя пользователя и пароль для учетной записи, созданной на шаге 1.

    5. Нажмите кнопку ОК

  6. Свяжите пул приложений с виртуальным каталогом, используемым для веб-синхронизации:

    1. В диспетчере служб IIS раскройте узел Локальный компьютер, затем — Веб-сайты.

    2. Раскройте веб-сайт, который используется для веб-синхронизации, щелкните правой кнопкой мыши виртуальный каталог, созданный для веб-синхронизации, а затем выберите Свойства.

    3. На вкладке Виртуальный каталог диалогового окна Свойства <ИмяВиртуальногоКаталога> в раскрывающемся списке Пул приложений выберите пул приложений, созданный на шаге 5.

    4. Нажмите кнопку ОК

Проверка подключения к replisapi.dll

Запустите веб-синхронизацию в диагностическом режиме, чтобы проверить соединение с сервером IIS и удостовериться, что SSL-сертификаты установлены правильно. Чтобы запустить веб-синхронизацию в режиме диагностики, необходимо быть администратором сервера IIS.

Сведения об изменении данных, добавляемых в файл Websync.log, см. в разделе Как изменить ведение журнала при соединении с сервером в диагностическом режиме.

Проверка подключения к replisapi.dll

  1. Убедитесь, что параметры локальной сети на подписчике установлены правильно:

    1. В Microsoft Internet Explorer в меню Сервис щелкните Свойства обозревателя.

    2. На вкладке Подключения щелкните Настройки локальной сети.

    3. Если в локальной сети не используется прокси-сервер, снимите флажки Автоматическое определение параметров и Использовать прокси-сервер для подключений LAN.

    4. Если прокси-сервер используется, установите флажки Использовать прокси-сервер для подключений LAN и Не использовать прокси-сервер для локальных адресов.

    5. Нажмите кнопку ОК

  2. В обозревателе Internet Explorer на подписчике подключитесь к серверу в диагностическом режиме, добавив параметр ?diag к адресу replisapi.dll. Например: https://server.domain.com/directory/replisapi.dll?diag.

  3. Если сертификат, заданный для сервера IIS, не распознается операционной системой Microsoft Windows, то выводится диалоговое окно Предупреждение безопасности. Это предупреждение может возникать из-за того, что это проверочный сертификат или сертификат, выданный центром сертификации, который не распознается Windows.

    ПримечаниеПримечание

    Если это диалоговое окно не выводится, обязательно добавьте этот сертификат для сервера, с которым устанавливается соединение, в качестве доверенного в хранилище сертификатов на подписчике. Дополнительные сведения об экспорте сертификатов см. в документации по службам IIS.

    1. В диалоговом окне Предупреждение системы безопасности щелкните Просмотреть сертификат.

    2. В диалоговом окне Сертификат на вкладке Общие щелкните Установить сертификат.

    3. Выполните указания мастера импорта сертификатов, приняв значения по умолчанию.

    4. В диалоговом окне Предупреждение безопасности нажмите кнопку Да.

    5. В окне подтверждения мастера импорта сертификатов нажмите кнопку ОК.

    6. Закройте диалоговое окно Сертификат.

    7. В диалоговом окне Предупреждение безопасности нажмите кнопку Да.

    ПримечаниеПримечание

    Сертификаты установлены. Эту операцию необходимо выполнить для каждого пользователя, который будет выполнять синхронизацию.

  4. В диалоговом окне Соединение с <имя_сервера> укажите имя входа и пароль, которые агент слияния будет использовать для подключения к серверу IIS. Эти учетные данные указываются также в мастере создания подписки.

  5. В окне обозревателя Internet Explorer Диагностические сведения SQL Websync проверьте, чтобы значение в каждом столбце Состояние на этой странице было равно SUCCESS.

  6. Убедитесь в том, что сертификат правильно установлен на подписчике:

    1. Закройте, а затем повторно откройте окно Internet Explorer.

    2. Подключитесь к серверу в диагностическом режиме. Если сертификат установлен правильно, диалоговое окно Предупреждение безопасности не появится. Если это окно появилось, то агент слияния не сможет подключиться к серверу IIS. Необходимо убедиться, что этот сертификат добавлен в качестве доверенного в хранилище сертификатов у подписчика. Дополнительные сведения об экспорте сертификатов см. в документации по службам IIS.

См. также

Основные понятия