Настройка сервера IIS 7 для веб-синхронизации
Применимо к: SQL Server (все поддерживаемые версии)
В этой статье описывается процесс настройки вручную служб Microsoft Internet Information Services (IIS) версии 7 и более поздней, которые будут использоваться при веб-синхронизации для репликации слиянием.
Настройка служб IIS версии 7 или более поздней является первым из трех шагов, которые необходимо выполнить для включения веб-синхронизации.
Обзор процесса настройки см. в статье Настройка веб-синхронизации.
Важно!
Убедитесь в том, что приложение использует только .NET Framework 2.0 или более позднюю версию, а более ранние версии .NET Framework на IIS-сервере не установлены. Более ранние версии платформы .NET Framework могут вызывать ошибки, например: "Недопустимый формат сообщения во время веб-синхронизации. Убедитесь в том, что компоненты репликации на веб-сервере настроены правильно».
Чтобы использовать веб-синхронизацию, необходимо настроить службы IIS, выполнив следующие шаги. Каждый шаг подробно описан в данном разделе.
Установите и настройте средство прослушивания репликации Microsoft SQL Server на компьютере, на котором запущены службы IIS.
Настройте протокол TLS (ранее — SSL). Протокол TLS необходим для связи между сервером IIS и всеми подписчиками.
Настройка проверки подлинности служб IIS
Настройте учетную запись и задайте разрешения для средства прослушивания репликации SQL Server .
Установка средства прослушивания репликации SQL Server
Веб-синхронизация поддерживается в IIS, начиная с версии 5.0. Мастер настройки веб-синхронизации служб IIS версии 5 и 6 не поддерживается в версии служб IIS 7.0 и более поздних. Начиная с SQL Server 2012, чтобы использовать компонент веб-синхронизации на сервере IIS, необходимо установить SQL Server с поддержкой репликации. Это может быть бесплатный выпуск SQL Server Express.
Установка и настройка средства прослушивания репликации SQL Server
Установите репликацию SQL Server на компьютере IIS.
Создайте на компьютере, где запущены службы IIS, новый каталог для файла replisapi.dll. Этот каталог можно создать в любом месте, но рекомендуется разместить его в каталоге <drive>:\Inetpub. Например, создайте каталог <drive>:\Inetpub\SQLReplication\.
Скопируйте файл replisapi.dll из каталога <drive>:\Program Files\Microsoft SQL Server\nnn\com\ в каталог с файлами, созданный на шаге 1.
Зарегистрируйте файл replisapi.dll:
Нажмите кнопку Пуск, затем щелкните Выполнить. В поле Открыть введите cmd и нажмите кнопку ОК.
В каталоге, созданном в шаге 1, выполните следующую команду:
regsvr32 replisapi.dll
Создайте новый веб-сайт для репликации или воспользуйтесь уже существующим. Во время синхронизации компоненты репликации будут обращаться к этому веб-сайту. В процедурах, описываемых в этом разделе, будет использоваться веб-сайт по умолчанию. Дополнительные сведения о том, как создать веб-сайт, содержатся в документации по службам IIS.
Создайте виртуальный каталог в службах IIS. Виртуальный каталог должен быть создан на сайте, созданном в шаге 4, и сопоставлен с каталогом, созданным в шаге 1. Разрешения для этого каталога должны быть максимально ограничены. Необходимо выбрать как минимум разрешения Чтение и Выполнение .
В диспетчере служб IIS на панели Соединения щелкните правой кнопкой мыши Веб-сайт по умолчанию и выберите Добавить виртуальный каталог.
В поле Псевдоним введите SQLReplication.
В поле Физический путь введите <drive>:\Inetpub\SQLReplication\ , а затем нажмите кнопку OK.
Установите в настройках служб IIS разрешение выполнять файл replisapi.dll.
В диспетчере служб IIS щелкните Веб-сайт по умолчанию.
На центральной панели выберите Сопоставления обработчика.
На панели Действия выберите Добавить сопоставление модуля.
В поле Путь запроса введите replisapi.dll.
В раскрывающемся списке Модуль выберите IsapiModule.
В поле Исполняемый файл введите <drive>:\Inetpub\SQLReplication\replisapi.dll.
В поле Имя введите Replisapi.
Нажмите кнопку Ограничения запроса , перейдите на вкладку Доступ и щелкните Выполнить.
Нажмите кнопку ОК , чтобы закрыть диалоговое окно Ограничения запроса , а затем повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно Добавить сопоставление модуля . При запросе на разрешение расширений ISAPI нажмите Да , чтобы добавить расширение.
Убедитесь, что файл Replisapi.dll включен в список Включены сопоставлений обработчика. Если он находится в списке Выключены , щелкните правой кнопкой мыши Replisapi и выберите Изменить разрешения функции. Установите флажок Выполнить , а затем нажмите кнопку ОК.
Настройка проверки подлинности служб IIS
При подключении компьютеров подписчиков к серверу IIS службы IIS должны проверить подлинность подключаемых подписчиков перед предоставлением им доступа к ресурсам и процессам. Проверка подлинности может выполняться для всего веб-сайта или для созданного виртуального каталога.
Рекомендуется использовать процедуру обычной проверки подлинности в сочетании с протоколом TLS. Протокол TLS должен использоваться вне зависимости от типа применяемой проверки подлинности.
Настройка проверки подлинности служб IIS
В диспетчере служб IIS щелкните Веб-сайт по умолчанию.
На средней панели дважды щелкните Проверка подлинности.
Щелкните правой кнопкой мыши «Анонимная проверка подлинности» и выберите «Выключить».
Щелкните правой кнопкой мыши «Обычная проверка подлинности» и выберите «Включить».
Настройка протокола SSL
Чтобы настроить протокол TLS, укажите сертификат, который будет использоваться компьютером, на котором запущены службы IIS. Веб-синхронизация для репликации слиянием поддерживает использование сертификатов сервера, но не клиентских. Чтобы настроить службы IIS для развертывания, необходимо вначале получить сертификат из центра сертификации (certification authority, CA). Дополнительные сведения о сертификатах см. в документации по службам IIS.
После установки сертификата необходимо связать сертификат с веб-сайтом, который используется веб-синхронизацией. При отладке можно указать самозаверяющий сертификат. С помощью служб IIS 7 можно создать сертификат и зарегистрировать его на компьютере пользователя.
Различие развертывания в рабочей среде и процедуры, описанной здесь, заключается в том, что при проверке в рабочей среде необходимо использовать сертификат, выданный центром сертификации, а не самозаверяющий сертификат.
Важно!
В рабочей среде использовать самозаверяющие сертификаты не рекомендуется. Самозаверяющие сертификаты не безопасны. Самозаверяющие сертификаты следует использовать только при разработке и отладке.
Для настройки протокола TLS следует выполнить следующие действия.
Настроить веб-сайт для принятия только TLS и игнорирования сертификатов клиента.
Получить сертификат в центре сертификации или создать самозаверяющий сертификат.
Выполнить привязку сертификата к веб-сайту репликации.
Настройка проверки безопасности с помощью SSL для веб-сайта
В диспетчере служб IIS разверните узел локального сервера и выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).
На центральной панели дважды щелкните Параметры SSL.
Выберите параметр Требовать SSL . Убедитесь, что в области Клиентские сертификаты выбран параметр Игнорировать .
Создание самозаверяющего сертификата для тестирования
В диспетчере служб IIS разверните узел локального сервера, затем на центральной панели дважды щелкните Сертификаты сервера.
На панели Действия выберите Создать самозаверяющий сертификат.
В диалоговом окне Создать самозаверяющий сертификат введите имя сертификата и нажмите кнопку ОК.
Привязка сертификата к веб-сайту
На панели Соединения выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).
На панели Действия выберите Привязки и щелкните Добавить. Откроется диалоговое окно Добавить привязку сайта .
В раскрывающемся списке Тип выберите HTTPS. Оставьте без изменений настройки для полей IP-адрес и Порт.
В раскрывающемся списке SSL-сертификат выберите сертификат, созданный в разделе «Создание самозаверяющего сертификата для тестирования», нажмите кнопку ОК, затем кнопку Закрыть.
Тестирование сертификата
В Вternet Вformation Services (IIS) Manager щелкните Веб-сайт по умолчанию.
На панели Действия выберите Перейти *:443(https) .
В Internet Explorer появится сообщение «Ошибка проверки сертификата безопасности веб-сайта». Это предупреждение указывает на то, что сертификат, связанный с этим веб-сайтом, не был выдан официальным центром сертификации и может не являться надежным. Это предупреждение должно было появиться, поэтому нажмите Перейти на веб-сайт (не рекомендуется) .
При запросе Подключиться к локальному компьютеру введите имя пользователя и пароль. Должна отобразиться домашняя страница веб-сайта.
Установка разрешений для средства прослушивания репликации 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).
Она должна быть сопоставлена с именем входа, связанным с пользователем в базе данных публикации.
Она должна быть сопоставлена с именем входа, связанным с пользователем в базе данных распространителя.
Она должна иметь разрешение на чтение в хранилище моментального снимка.
Настройка учетной записи и разрешений
На компьютере, на котором запущены службы IIS, создайте локальную учетную запись:
Откройте Диспетчер сервера. В меню «Пуск» щелкните правой кнопкой мыши Компьютер и выберите Управление.
В Диспетчер сервера разверните узел Настройка, затем узел Локальные пользователи и группы.
Щелкните правой кнопкой мыши значок Пользователи, а затем выберите Новый пользователь… .
Введите имя пользователя и надежный пароль. Снимите флажок Потребовать смену пароля при следующем входе в систему.
Нажмите кнопку Создать, а затем кнопку Закрыть.
Добавьте учетную запись в группу IIS_IUSRS:
В диспетчере сервера разверните узел Настройка, затем узел Локальные пользователи и группы, выберите элемент Группы.
Щелкните правой кнопкой мыши группу IIS_IUSRS и выберите Добавить в группу.
В диалоговом окне Свойства: IIS_IUSRS щелкните Добавить... .
В диалоговом окне Выбор: Пользователи, Компьютеры или Группы добавьте учетную запись, созданную на шаге 1.
Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если в этом поле не отображается имя локального компьютера, нажмите кнопку Расположение... . В диалоговом окне Расположение... выберите локальный компьютер, а затем нажмите кнопку ОК.
В диалоговых окнах Выбор пользователей и Свойства: IIS_IUSRS нажмите кнопку ОК.
Предоставьте учетной записи минимальные разрешения для доступа к папке, содержащей библиотеку replisapi.dll:
В обозревателе Windows щелкните правой кнопкой мыши папку, созданную для файла replisapi.dll, и выберите Свойства.
На вкладке Безопасность нажмите Изменить.
В диалоговом окне Разрешения для <foldername> нажмите Добавить, чтобы добавить учетную запись, созданную в шаге 1.
Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если в этом поле не отображается имя локального компьютера, нажмите кнопку Расположение... . В диалоговом окне Расположение... выберите локальный компьютер, а затем нажмите кнопку ОК.
Убедитесь, что учетной записи предоставлены только разрешения Чтение, Чтение и выполнение и List Folder Contents (Перечисление содержимого папки).
Выберите пользователей и группы, которым не требуется доступ к этому каталогу, и нажмите Удалить, затем нажмите кнопку ОК.
Создайте пул приложений в диспетчере служб IIS:
В диспетчере служб IIS на панели Соединения разверните узел локального сервера.
Щелкните правой кнопкой Пулы приложений и выберите Добавить пул приложений.
Введите имя пула приложений, оставьте без изменений значения по умолчанию в остальных полях и нажмите кнопку ОК.
Примечание
Если предполагается использовать более двух параллельных клиентов синхронизации, рекомендуется создать веб-сад. Дополнительные сведения см. в разделе "Создание веб-сада" статьи Настройка веб-синхронизации.
Свяжите учетную запись с этим пулом приложений:
В диспетчере служб IIS раскройте узел локального сервера и выберите Пулы приложений.
Щелкните правой кнопкой мыши созданный пул приложений, а затем выберите Настройки по умолчанию пула приложений.
В диалоговом окне Настройки по умолчанию пула приложений с помощью прокрутки перейдите к разделу Модель процесса , а затем выберите поле Удостоверение .
Нажмите овальную кнопку справа от строки Удостоверение .
Щелкните переключатель Настраиваемая учетная запись и выберите Настроить.
В полях Имя пользователя и Пароль введите имя пользователя и пароль для учетной записи, созданной на шаге 1, затем нажмите кнопку ОК.
Нажмите кнопку ОК , чтобы закрыть диалоговое окно Удостоверение пула приложений , затем повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно Значения по умолчанию для пула приложений.
Свяжите пул приложений с веб-сайтом репликации:
В диспетчере служб IIS разверните узел локального сервера и выберите Веб-сайт по умолчанию (или используемый веб-сайт синхронизации, если это не веб-сайт по умолчанию).
На панели Действия под Управление веб-сайтом выберите Дополнительные параметры.
В диалоговом окне Дополнительные параметры нажмите кнопку с многоточием справа от Пула приложений.
В раскрывающемся списке Пул приложений выберите пул приложений, созданный в шаге 4, затем нажмите кнопку ОК.
Повторно нажмите кнопку ОК , чтобы закрыть диалоговое окно «Дополнительные параметры».
Проверка подключения к replisapi.dll
Запустите веб-синхронизацию в диагностическом режиме, чтобы проверить соединение с сервером IIS и убедиться, что TLS/SSL-сертификат установлен правильно. Чтобы запустить веб-синхронизацию в режиме диагностики, необходимо быть администратором сервера IIS.
Проверка подключения к replisapi.dll
Убедитесь, что параметры локальной сети на подписчике установлены правильно:
В Microsoft Internet Explorer в меню Сервис щелкните Свойства обозревателя.
На вкладке Подключения щелкните Настройки локальной сети.
Если в локальной сети не используется прокси-сервер, снимите флажки Автоматическое определение параметров и Использовать прокси-сервер для подключений LAN.
Если прокси-сервер используется, выберите Использовать прокси-сервер для подключений локальной сети и Не использовать прокси-сервер для локальных адресов и нажмите кнопку ОК.
В обозревателе Internet Explorer на подписчике подключитесь к серверу в диагностическом режиме, добавив параметр
?diag
к адресу replisapi.dll. Например:https://server.domain.com/directory/replisapi.dll?diag
.Примечание
В примере выше server.domain.com необходимо заменить точным именем Кому выдан , указанным в разделе Сертификаты сервера в диспетчере служб IIS.
Если сертификат, заданный для сервера IIS, не распознается операционной системой Windows, то выводится диалоговое окно Предупреждение безопасности . Это предупреждение может возникать из-за того, что это проверочный сертификат или сертификат, выданный центром сертификации, который не распознается Windows.
Примечание
Если это диалоговое окно не выводится, обязательно добавьте этот сертификат для сервера, с которым устанавливается соединение, в качестве доверенного в хранилище сертификатов на подписчике. Дополнительные сведения об экспорте сертификатов см. в документации по службам IIS.
В диалоговом окне Предупреждение системы безопасности щелкните Просмотреть сертификат.
В диалоговом окне Сертификат на вкладке Общие щелкните Установить сертификат.
Выполните указания мастера импорта сертификатов, приняв значения по умолчанию.
В диалоговом окне Предупреждение безопасности нажмите кнопку Да.
В окне подтверждения мастера импорта сертификатов нажмите кнопку ОК.
Закройте диалоговое окно Сертификат .
В диалоговом окне Предупреждение безопасности нажмите кнопку Да.
Примечание
Сертификаты установлены. Эту операцию необходимо выполнить для каждого пользователя, который будет выполнять синхронизацию.
В диалоговом окне Соединение с <ServerName> укажите имя входа и пароль, которые агент слияния будет использовать для подключения к серверу IIS. Эти учетные данные указываются также в мастере создания подписки.
В окне обозревателя Internet Explorer Диагностические сведения SQL Websync проверьте, чтобы значение в каждом столбце Состояние на этой странице было равно SUCCESS.
Убедитесь в том, что сертификат правильно установлен на подписчике:
Закройте, а затем повторно откройте окно Internet Explorer.
Подключитесь к серверу в диагностическом режиме. Если сертификат установлен правильно, диалоговое окно Предупреждение безопасности не появится. Если это окно появилось, то агент слияния не сможет подключиться к серверу IIS. Необходимо убедиться, что этот сертификат добавлен в качестве доверенного в хранилище сертификатов у подписчика. Дополнительные сведения об экспорте сертификатов см. в документации по службам IIS.
См. также:
Веб-синхронизация для репликации слиянием
Настройка веб-синхронизации