Настройка сервера IIS 7 для веб-синхронизации

Применимо к: даSQL Server (все поддерживаемые версии)

В этой статье описывается процесс настройки вручную служб Microsoft Internet Information Services (IIS) версии 7 и более поздней, которые будут использоваться при веб-синхронизации для репликации слиянием.

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

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

Важно!

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

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

  1. Установите и настройте средство прослушивания репликации Microsoft SQL Server на компьютере, на котором запущены службы IIS.

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

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

  4. Настройте учетную запись и задайте разрешения для средства прослушивания репликации SQL Server .

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

Веб-синхронизация поддерживается в IIS, начиная с версии 5.0. Мастер настройки веб-синхронизации служб IIS версии 5 и 6 не поддерживается в версии служб IIS 7.0 и более поздних. Начиная с SQL Server 2012, чтобы использовать компонент веб-синхронизации на сервере IIS, необходимо установить SQL Server с поддержкой репликации. Это может быть бесплатный выпуск SQL Server Express.

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

  1. Установите репликацию SQL Server на компьютере IIS.

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

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

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

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

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

      regsvr32 replisapi.dll

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

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

    1. В диспетчере служб IIS на панели Соединения щелкните правой кнопкой мыши Веб-сайт по умолчанию и выберите Добавить виртуальный каталог.

    2. В поле Псевдоним введите SQLReplication.

    3. В поле Физический путь введите <drive>:\Inetpub\SQLReplication\ , а затем нажмите кнопку OK.

  7. Установите в настройках служб IIS разрешение выполнять файл replisapi.dll.

    1. В диспетчере служб IIS щелкните Веб-сайт по умолчанию.

    2. На центральной панели выберите Сопоставления обработчика.

    3. На панели Действия выберите Добавить сопоставление модуля.

    4. В поле Путь запроса введите replisapi.dll.

    5. В раскрывающемся списке Модуль выберите IsapiModule.

    6. В поле Исполняемый файл введите <drive>:\Inetpub\SQLReplication\replisapi.dll.

    7. В поле Имя введите Replisapi.

    8. Нажмите кнопку Ограничения запроса , перейдите на вкладку Доступ и щелкните Выполнить.

    9. Нажмите кнопку ОК , чтобы закрыть диалоговое окно Ограничения запроса , а затем повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно Добавить сопоставление модуля . При запросе на разрешение расширений ISAPI нажмите Да , чтобы добавить расширение.

    10. Убедитесь, что файл Replisapi.dll включен в список Включены сопоставлений обработчика. Если он находится в списке Выключены , щелкните правой кнопкой мыши Replisapi и выберите Изменить разрешения функции. Установите флажок Выполнить , а затем нажмите кнопку ОК.

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

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

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

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

  1. В диспетчере служб IIS щелкните Веб-сайт по умолчанию.

  2. На средней панели дважды щелкните Проверка подлинности.

  3. Щелкните правой кнопкой мыши «Анонимная проверка подлинности» и выберите «Выключить».

  4. Щелкните правой кнопкой мыши «Обычная проверка подлинности» и выберите «Включить».

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

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

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

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

Важно!

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

Для настройки протокола TLS следует выполнить следующие действия.

  1. Настроить веб-сайт для принятия только TLS и игнорирования сертификатов клиента.

  2. Получить сертификат в центре сертификации или создать самозаверяющий сертификат.

  3. Выполнить привязку сертификата к веб-сайту репликации.

Настройка проверки безопасности с помощью SSL для веб-сайта

  1. В диспетчере служб IIS разверните узел локального сервера и выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).

  2. На центральной панели дважды щелкните Параметры SSL.

  3. Выберите параметр Требовать SSL . Убедитесь, что в области Клиентские сертификаты выбран параметр Игнорировать .

Создание самозаверяющего сертификата для тестирования

  1. В диспетчере служб IIS разверните узел локального сервера, затем на центральной панели дважды щелкните Сертификаты сервера.

  2. На панели Действия выберите Создать самозаверяющий сертификат.

  3. В диалоговом окне Создать самозаверяющий сертификат введите имя сертификата и нажмите кнопку ОК.

Привязка сертификата к веб-сайту
  1. На панели Соединения выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).

  2. На панели Действия выберите Привязки и щелкните Добавить. Откроется диалоговое окно Добавить привязку сайта .

  3. В раскрывающемся списке Тип выберите HTTPS. Оставьте без изменений настройки для полей IP-адрес и Порт.

  4. В раскрывающемся списке SSL-сертификат выберите сертификат, созданный в разделе «Создание самозаверяющего сертификата для тестирования», нажмите кнопку ОК, затем кнопку Закрыть.

Тестирование сертификата
  1. В Вternet Вformation Services (IIS) Manager щелкните Веб-сайт по умолчанию.

  2. На панели Действия выберите Перейти *:443(https) .

  3. В Internet Explorer появится сообщение «Ошибка проверки сертификата безопасности веб-сайта». Это предупреждение указывает на то, что сертификат, связанный с этим веб-сайтом, не был выдан официальным центром сертификации и может не являться надежным. Это предупреждение должно было появиться, поэтому нажмите Перейти на веб-сайт (не рекомендуется) .

  4. При запросе Подключиться к локальному компьютеру введите имя пользователя и пароль. Должна отобразиться домашняя страница веб-сайта.

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

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

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

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

Внимание! Учетная запись, созданная в этом разделе, будет использоваться для соединения с издателем и распространителем во время синхронизации. Эта учетная запись должна быть добавлена как учетная запись входа SQL на сервере издателя и распространителя.

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

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

  • Она должна входить в список доступа к публикации (PAL).

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

  • Она должна быть сопоставлена с именем входа, связанным с пользователем в базе данных распространителя.

  • Она должна иметь разрешение на чтение в хранилище моментального снимка.

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

  1. На компьютере, на котором запущены службы IIS, создайте локальную учетную запись:

    1. Откройте Диспетчер сервера. В меню «Пуск» щелкните правой кнопкой мыши Компьютер и выберите Управление.

    2. В Диспетчер сервера разверните узел Настройка, затем узел Локальные пользователи и группы.

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

    4. Введите имя пользователя и надежный пароль. Снимите флажок Потребовать смену пароля при следующем входе в систему.

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

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

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

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

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

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

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

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

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

    1. В обозревателе Windows щелкните правой кнопкой мыши папку, созданную для файла replisapi.dll, и выберите Свойства.

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

    3. В диалоговом окне Разрешения для <foldername> нажмите Добавить, чтобы добавить учетную запись, созданную в шаге 1.

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

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

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

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

    1. В диспетчере служб IIS на панели Соединения разверните узел локального сервера.

    2. Щелкните правой кнопкой Пулы приложений и выберите Добавить пул приложений.

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

    Примечание

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

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

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

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

    3. В диалоговом окне Настройки по умолчанию пула приложений с помощью прокрутки перейдите к разделу Модель процесса , а затем выберите поле Удостоверение .

    4. Нажмите овальную кнопку справа от строки Удостоверение .

    5. Щелкните переключатель Настраиваемая учетная запись и выберите Настроить.

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

    7. Нажмите кнопку ОК , чтобы закрыть диалоговое окно Удостоверение пула приложений , затем повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно Значения по умолчанию для пула приложений.

  6. Свяжите пул приложений с веб-сайтом репликации:

    1. В диспетчере служб IIS разверните узел локального сервера и выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).

    2. На панели Действия под Управление веб-сайтом выберите Дополнительные параметры.

    3. В диалоговом окне Дополнительные параметры нажмите кнопку с многоточием справа от Пула приложений.

    4. В раскрывающемся списке Пул приложений выберите пул приложений, созданный в шаге 4, затем нажмите кнопку ОК.

    5. Повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно «Дополнительные параметры».

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

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

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

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

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

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

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

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

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

    Примечание

    В примере выше server.domain.com необходимо заменить точным именем Кому выдан , указанным в разделе Сертификаты сервера в диспетчере служб IIS.

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

    Примечание

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

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

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

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

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

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

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

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

    Примечание

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

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

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

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

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

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

См. также:

Веб-синхронизация для репликации слиянием
Настройка веб-синхронизации