Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server
Процедуры, описанные в этой статье, проведут вас через процесс ручной настройки служб IIS версии 7 и выше для использования веб-синхронизации в репликации слиянием.
Настройка служб IIS версии 7 или более поздней является первым из трех шагов, которые необходимо выполнить для включения веб-синхронизации.
Обзор процесса настройки см. в статье Настройка веб-синхронизации.
Убедитесь, что приложение использует только версии .NET Framework 2.0 или более поздних версий, а более ранние версии .NET Framework не установлены на сервере IIS. Более ранние версии .NET Framework могут привести к ошибкам, например:
The format of a message during Web synchronization was invalid. Ensure that replication components are properly configured at the Web server.
Чтобы использовать веб-синхронизацию, необходимо настроить службы IIS, выполнив следующие шаги. Каждый шаг подробно описан в этой статье.
Установите и настройте прослушиватель репликации SQL Server на компьютере под управлением IIS.
Настройте протокол TLS (Transport Layer Security) (ранее известный как SSL - Secure Sockets Layer). Протокол TLS необходим для связи между сервером IIS и всеми подписчиками.
Настройка проверки подлинности IIS
Настройте учетную запись и задайте разрешения для слушателя репликации SQL Server.
Установка прослушивателя репликации SQL Server
Веб-синхронизация поддерживается в IIS, начиная с версии 5.0. Мастер настройки веб-синхронизации IIS версии 5 и 6 недоступен в IIS версии 7.0 и выше.
Примечание.
Чтобы использовать компонент веб-синхронизации на сервере IIS в SQL Server 2012 (11.x) и более поздних версиях, необходимо установить SQL Server с репликацией. Это включает в себя бесплатный выпуск SQL Server Express.
Установка и настройка прослушивателя репликации SQL Server
Установите репликацию SQL Server на компьютере IIS.
Создайте на компьютере, где запущены службы IIS, новый каталог для файла replisapi.dll. Каталог можно создать в любом месте, но рекомендуется создать каталог под диском<>:\Inetpub. Например, создайте каталог <drive>:\Inetpub\SQLReplication\.
Скопируйте replisapi.dll из каталога <диск>:\Program Files\Microsoft SQL Server\nnn\COM\ в директорию файлов, которую вы создали на шаге 1.
Зарегистрируйте файл replisapi.dll:
Нажмите Пуск и выберите Выполнить. В поле "Открыть" введите cmd и нажмите кнопку "ОК".
В каталоге, созданном в шаге 1, выполните следующую команду:
regsvr32 replisapi.dll
Создайте новый веб-сайт для репликации или воспользуйтесь уже существующим. Во время синхронизации компоненты репликации будут обращаться к этому веб-сайту. В этой статье предполагается использование веб-сайта по умолчанию. Дополнительные сведения о том, как создать веб-сайт, содержатся в документации по службам IIS.
Создайте виртуальный каталог в службах IIS. Виртуальный каталог должен быть создан на сайте, созданном в шаге 4, и сопоставлен с каталогом, созданным в шаге 1. Разрешения для этого каталога должны быть максимально ограничены. Необходимо выбрать как минимум разрешения Чтение и Выполнение .
В диспетчере служб IISна панели Соединения щелкните правой кнопкой мыши Веб-сайт по умолчаниюи выберите Добавить виртуальный каталог.
Для псевдонима введите
SQLReplication
.Для физического пути введите <диск>:\Inetpub\SQLReplication\, а затем нажмите кнопку "ОК".
Установите в настройках служб 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 выберите узел локального сервера, а затем в центральной области дважды щелкните сертификаты сервера.
В области действий выберите "Создать сертификат Self-Signed".
В диалоговом окне "Создание сертификата Self-Signed" введите имя сертификата и нажмите кнопку "ОК".
Привязка сертификата к веб-сайту
В области "Подключения" выберите веб-сайт по умолчанию (или сайт веб-синхронизации, если он отличается от веб-сайта по умолчанию).
В области "Действия " выберите "Привязки" и нажмите кнопку "Добавить". Откроется диалоговое окно Добавление привязки сайта.
В раскрывающемся списке "Тип" выберите https. Оставьте без изменений настройки для полей IP-адрес и Порт.
В раскрывающемся списке SSL-сертификата выберите сертификат, созданный в разделе "Чтобы создать самозаверяющий сертификат для тестирования", нажмите кнопку "ОК", а затем нажмите кнопку "Закрыть".
Проверка сертификата
В диспетчере служб IIS выберите веб-сайт по умолчанию.
В области действий выберите Просмотр *:443(https).
Откроется Internet Explorer и отобразится сообщение о том, что "Возникла проблема с сертификатом безопасности этого веб-сайта". Это предупреждение сообщает о том, что связанный сертификат не выдан распознаваемым ЦС и может не быть надежным. Это ожидаемое предупреждение, поэтому выберите "Продолжить на этот веб-сайт" (не рекомендуется).
Если вам будет предложено подключиться к localhost, введите имя пользователя и пароль для продолжения. Должна отобразиться домашняя страница веб-сайта.
Настройка разрешений для прослушивателя репликации SQL Server
При подключении компьютера подписчика к компьютеру, на котором запущены службы IIS, проверка подлинности подписчика производится с помощью типа проверки подлинности, заданного при настройке служб IIS. После проверки подлинности подписчика IIS проверяет, авторизован ли подписчик на вызов репликации SQL Server. Вы управляете пользователями, которые могут вызывать репликацию SQL Server, задав разрешения для replisapi.dll. Для предотвращения несанкционированного доступа к репликации SQL Server необходимо правильно настроить разрешения.
Чтобы настроить минимальные разрешения для учетной записи, под которой выполняется прослушиватель репликации SQL Server, выполните следующую процедуру. Действия, описанные в следующей процедуре, применяются к Windows Server 2008 под управлением IIS 7.0.
Помимо выполнения следующих шагов, убедитесь в том, что все необходимые имена входа содержатся в списке доступа к публикации (PAL). Для получения дополнительной информации о PAL см. Защита издателя.
Внимание
Учетная запись, созданная в этом разделе, — это учетная запись, которая подключается к издателю и распространителю во время синхронизации. Эта учетная запись должна быть добавлена как учетная запись входа SQL на сервере издателя и распространителя.
Учетная запись, используемая для прослушивателя репликации SQL Server, должна иметь разрешения, как описано в разделе "Подключение к издателю или распространителю" в статье "Безопасность агента слияния ".
В нескольких словах, учетная запись должна отвечать следующим требованиям.
- Вступите в Список доступа к публикации (PAL).
- Должно быть сопоставлено с именем входа, связанным с пользователем в базе данных публикаций.
- Она должна быть связана с именем входа, ассоциированным с пользователем в распределительной базе данных.
- Она должна иметь разрешение на чтение в хранилище моментального снимка.
Настройка учетной записи и разрешений
На компьютере, на котором запущены службы IIS, создайте локальную учетную запись:
Откройте Диспетчер сервера. В меню "Пуск" щелкните правой кнопкой мыши компьютер и выберите пункт "Управление".
В Диспетчер сервера разверните узел Настройка, затем узел Локальные пользователи и группы.
Щелкните правой кнопкой мыши пункт Пользователи и выберите Новый пользователь.
Введите имя пользователя и надежный пароль. Очистить Требовать смены пароля при следующем входе в систему.
Нажмите кнопку "Создать" и нажмите кнопку "Закрыть".
Добавьте учетную запись в группу IIS_IUSRS:
В диспетчере серверов разверните узел "Конфигурация", разверните узел "Локальные пользователи и группы" и выберите "Группы".
Щелкните правой кнопкой мыши IIS_IUSRS и выберите пункт "Добавить в группу".
В диалоговом окне "Свойства IIS_IUSRS" нажмите кнопку "Добавить".
В диалоговом окне Выбор: Пользователи, Компьютеры или Группы добавьте учетную запись, созданную на шаге 1.
Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если это поле не отображает имя локального компьютера, выберите "Расположения". В диалоговом окне "Расположения" выберите локальный компьютер и нажмите кнопку "ОК".
В диалоговом окне "Выбор пользователей" и в диалоговом окне "Свойства IIS_IUSRS" нажмитекнопку "ОК".
Предоставьте учетной записи минимальные разрешения для доступа к папке, содержащей библиотеку replisapi.dll:
В проводнике Windows щелкните правой кнопкой мыши папку, созданную для replisapi.dll, и выберите пункт "Свойства".
На вкладке "Безопасность" нажмите кнопку "Изменить".
В диалоговом окне "Разрешения для <имени> папки" выберите "Добавить", чтобы добавить учетную запись, созданную на шаге 1.
Убедитесь, что в поле В следующем месте: указано имя локального компьютера, а не домена. Если это поле не отображает имя локального компьютера, выберите "Расположения". В диалоговом окне "Расположения" выберите локальный компьютер и нажмите кнопку "ОК".
Убедитесь, что учетной записи предоставлены только разрешения Чтение, Чтение и выполнение и Перечисление содержимого папки.
Выберите пользователей или группы, которые не требуют доступа к каталогу, нажмите кнопку "Удалить" и нажмите кнопку "ОК".
Создайте пул приложений в диспетчере служб IIS:
В диспетчере служб IISна панели Соединения разверните узел локального сервера.
Щелкните правой кнопкой мыши пулы приложений и выберите пункт "Добавить пул приложений".
Введите имя пула приложений, оставьте значения по умолчанию для оставшихся полей и нажмите кнопку "ОК".
Если предполагается использовать более двух параллельных клиентов синхронизации, рекомендуется создать веб-сад. Дополнительные сведения см. в разделе "Создание веб-сада".
Свяжите учетную запись с этим пулом приложений:
В диспетчере служб IIS разверните узел локального сервера и выберите пулы приложений.
Щелкните правой кнопкой мыши созданный пул приложений и выберите "Задать значения по умолчанию пула приложений".
В диалоговом окне "Параметры пула приложений" прокрутите вниз до раздела "Модель процесса" и выберите поле "Удостоверение".
Нажмите кнопку с многоточием в правой части строки Идентификатор.
Выберите переключатель опций "Пользовательская учетная запись", затем выберите "Задать".
В полях "Имя пользователя " и "Пароль " введите учетную запись и пароль, созданные на шаге 1, а затем нажмите кнопку "ОК".
Нажмите "ОК, чтобы закрыть диалоговое окно Удостоверение пула приложений, а затем снова нажмите "ОК, чтобы закрыть диалоговое окно Параметры пула приложений по умолчанию.
Свяжите пул приложений с веб-сайтом репликации:
В диспетчере служб IIS разверните узел локального сервера и выберите веб-сайт по умолчанию (или сайт веб-синхронизации, если он отличается от веб-сайта по умолчанию).
В области "Действия " в разделе "Управление веб-сайтом" выберите "Дополнительные параметры".
В диалоговом окне "Дополнительные параметры" нажмите кнопку с многоточием справа от пула приложений.
В раскрывающемся списке пула приложений выберите пул приложений , созданный на шаге 4, и нажмите кнопку "ОК".
Нажмите кнопку "ОК" , чтобы закрыть дополнительные параметры.
Проверка подключения к replisapi.dll
Запустите веб-синхронизацию в диагностическом режиме, чтобы проверить соединение с сервером IIS и убедиться, что TLS/SSL-сертификат установлен правильно. Чтобы запустить веб-синхронизацию в режиме диагностики, необходимо быть администратором сервера IIS.
Убедитесь, что параметры локальной сети на подписчике установлены правильно:
В Internet Explorer в меню "Сервис" выберите "Параметры браузера".
На вкладке "Подключения" выберите "Параметры локальной сети".
Если прокси-сервер не используется в локальной сети, снимите флажок "Автоматически обнаруживать параметры " и используйте прокси-сервер для локальной сети.
Если используется прокси-сервер, выберите "Использовать прокси-сервер для локальной сети " и "Обход прокси-сервера" для локальных адресов и нажмите кнопку "ОК".
В обозревателе Internet Explorer на подписчике подключитесь к серверу в диагностическом режиме, добавив параметр
?diag
к адресу replisapi.dll. Например:https://<server.domain.com>/directory/replisapi.dll?diag
.В предыдущем примере
<server.domain.com>
следует заменить именем Issued To, указанным в разделе Сертификаты сервера в IIS Manager.Если сертификат, указанный для IIS, не распознается операционной системой Windows, появится диалоговое окно "Оповещение системы безопасности ". Это оповещение может возникать из-за того, что сертификат является тестируемым сертификатом или сертификатом был выдан центром сертификации (ЦС), который Windows не распознает.
Если это диалоговое окно не отображается, убедитесь, что сертификат для сервера, к которому вы обращаетесь, был добавлен в хранилище сертификатов на подписчике в качестве доверенного сертификата. Дополнительные сведения об экспорте сертификатов см. в документации по службам IIS.
В диалоговом окне "Оповещение системы безопасности " выберите "Просмотр сертификата".
В диалоговом окне "Сертификат" на вкладке "Общие " выберите "Установить сертификат".
Выполните указания мастера импорта сертификатов, приняв значения по умолчанию.
В диалоговом окне "Предупреждение системы безопасности " нажмите кнопку "Да".
В диалоговом окне подтверждения "Мастер импорта сертификатов" нажмите кнопку "ОК".
Закройте диалоговое окно Сертификат .
В диалоговом окне "Оповещение системы безопасности " нажмите кнопку "Да".
Сертификаты установлены. Эту операцию необходимо выполнить для каждого пользователя, который будет синхронизироваться с IIS.
В диалоговом окне Connect to <ServerName> укажите имя входа и пароль, которые будут использоваться агентом слияния для подключения к IIS. Эти учетные данные указываются также в мастере создания подписки.
В окне Internet Explorer с именем диагностических сведений SQL Websync убедитесь, что значение в каждом столбце состояния на странице.
SUCCESS
Убедитесь в том, что сертификат правильно установлен на подписчике:
Закройте, а затем повторно откройте окно Internet Explorer.
Подключитесь к серверу в диагностическом режиме. Если сертификат установлен правильно, диалоговое окно "Оповещение системы безопасности " не отображается. Если появится диалоговое окно, агент Merge завершит работу с ошибкой при попытке подключения к компьютеру, на котором работает IIS. Вам необходимо убедиться, что сертификат для сервера, к которому вы обращаетесь, был добавлен в хранилище сертификатов у участника в качестве доверенного сертификата. Дополнительные сведения об экспорте сертификатов см. в документации по Службам Интернет-Информации (IIS).