Архитектура безопасности для веб-синхронизации
Область применения: SQL Server
Microsoft SQL Server обеспечивает точное управление конфигурацией безопасности веб-синхронизации. В этом разделе представлен подробный список всех компонентов, которые можно включать в настройку веб-синхронизации, и сведения о соединениях между компонентами. По возможности используйте аутентификацию Windows.
На следующем рисунке показаны все возможные соединения, однако некоторые из них могут быть не обязательны в определенной топологии. Например, соединение с сервером FTP требуется, только если моментальный снимок доставляется по протоколу FTP.
В следующей таблице представлены компоненты и соединения, показанные на рисунке.
А. Пользователь Windows, под учетной записью которого выполняется агент слияния
Во время синхронизации агент слияния (А) запускается на подписчике. Агент слияния можно запустить с шага задания агент SQL Server или из автономного пользовательского приложения. Если агент слияния запущен с шага задания агент SQL Server, агент слияния выполняется в контексте указанного пользователя Windows. Если пользователь Windows не указан, агент слияния выполняется в контексте учетной записи службы Windows для агент SQL Server.
Тип учетной записи | Где задана учетная запись |
---|---|
пользователя Windows | Transact-SQL: @job_login параметры sp_addmergepullsubscription_agent@job_password .Объекты RMO: свойства Login и Password для SynchronizationAgentProcessSecurity. |
Учетная запись службы Windows для агент SQL Server | Диспетчер конфигурации SQL Server |
Изолированное приложение | Агент слияния выполняется в контексте пользователя Windows, который выполняет это приложение |
B. Соединение с подписчиком
Агент слияния подключается к подписчику с помощью проверки подлинности Windows или проверки подлинности SQL Server. Указанный пользователь Windows или имя входа SQL Server должно быть связано с пользователем базы данных, который является членом предопределенной роли базы данных dbowner в базе данных подписки.
Примечание.
Проверка подлинности Windows всегда используется при запуске агент слияния из задания агент SQL Server. Проверка подлинности Windows также используется при запуске агент слияния программным способом, если только проверка подлинности SQL Server явно не указана.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows. | Агент слияния устанавливает соединение в контексте пользователя Windows, заданного для агента слияния (А) |
Проверка подлинности SQL Server используется только в том случае, если указано следующее: — Объекты RMO: значение Standard для свойства SubscriberSecurityMode. Командная строка агента слияния: значение 0 для параметра SubscriberSecurityMode. |
Объекты RMO: SubscriberLogin и SubscriberPassword. Командная строка агента слияния: -SubscriberLogin и -SubscriberLogin. |
C. Соединение с исходящим прокси-сервером
Пользователь Windows для этого соединения задается только в том случае, если имеется исходящий прокси-сервер, ограничивающий доступ к внутренней сети подписчика.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows | RMO: InternetProxyLogin и InternetProxyPassword вместе с InternetProxyServer. Командная строка агента слияния: -InternetProxyLogin и -InternetProxyPassword с -InternetProxyServer. |
D. Соединение со службами IIS
После подключения к подписчику и извлечения изменений из базы данных подписки агент слияния выполняет HTTPS-запрос на Microsoft IIS (IIS) и отправляет изменения данных в виде XML-сообщения. Агент слияния должен иметь разрешения входа для служб IIS.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Используется обычная проверка подлинности, если задано одно из следующих значений: — Transact-SQL: значение 0 для @internet_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Standard для свойства InternetSecurityMode. Командная строка агента слияния: значение 0 для параметра -InternetSecurityMode. |
Transact-SQL: @internet_login параметры sp_addmergepullsubscription_agent@internet_password .Объекты RMO: InternetLogin и InternetPassword. Командная строка агента слияния: -InternetLogin и -InternetPassword. |
Встроенная проверка подлинности1 используется в том случае, если задано одно из следующих значений: — Transact-SQL: значение 1 для @internet_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Integrated для свойства InternetSecurityMode. Командная строка агента слияния: значение 1 для параметра -InternetSecurityMode. |
Агент слияния устанавливает соединение в контексте пользователя Windows, заданного для агента слияния (А) |
1 Встроенная проверка подлинности может использоваться только в том случае, если все компьютеры принадлежат к одному домену или к нескольким доменам, имеющим доверительные связи друг с другом.
Примечание.
При использовании встроенной проверки подлинности требуется делегирование. Для соединений от подписчика к серверу IIS рекомендуется использовать обычную проверку подлинности и протокол TLS.
Е. Соединение с издателем
Компоненты прослушивателя Репликация SQL Server и средства согласования репликации слиянием размещаются на компьютере под управлением IIS. Эти компоненты выполняют следующие действия:
Получают HTTPS-запрос, описанный в разделе «Г. Соединение со службами IIS».
Внесите подключение SQL к базе данных публикации и примените отправленные изменения к базе данных публикации.
Извлекают загруженные в базу данных изменения и отправляют HTTPS-ответ обратно агенту слияния.
Средство примирителя репликации слиянием подключается к издателю с помощью проверки подлинности Windows или проверки подлинности SQL Server. Указанный пользователь Windows или имя входа SQL Server должны соответствовать следующим требованиям:
Быть в списке доступа к публикации (PAL). Дополнительные сведения см. в статье Организация безопасности издателя.
Быть связанными с пользователем в базе данных публикации.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows используется, если задано одно из следующих значений: — Transact-SQL: значение 1 для @publisher_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Integrated для свойства PublisherSecurityMode. Командная строка агента слияния: значение 1 для параметра -PublisherSecurityMode. |
Агент слияния соединяется с издателем в контексте пользователя Windows, заданного для соединения со службами IIS (Г). Если издатель и службы IIS находятся на разных компьютерах и для соединения используется встроенная проверка подлинности (Г), на сервере IIS необходимо включить делегирование Kerberos. Дополнительные сведения см. в документации по Windows. |
Проверка подлинности SQL Server используется, если указан один из следующих вариантов: — Transact-SQL: значение 0 для @publisher_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Standard для свойства PublisherSecurityMode. Командная строка агента слияния: значение 0 для параметра -PublisherSecurityMode. |
Transact-SQL: @publisher_login параметры sp_addmergepullsubscription_agent@publisher_password .Объекты RMO: PublisherLogin и PublisherPassword. Командная строка агента слияния: -PublisherLogin и -PublisherPassword. |
F. Соединение с распространителем
Посредник репликации слиянием, находящийся на сервере IIS, также соединяется с распространителем. Посредник репликации слиянием подключается к распространителю с помощью проверки подлинности Windows или проверки подлинности SQL Server. Указанный пользователь Windows или имя входа SQL Server должны соответствовать следующим требованиям:
Быть в списке доступа к публикации (PAL). Дополнительные сведения см. в статье Организация безопасности издателя.
Быть связанными с пользователем в базе данных распространителя. Пользователь может иметь учетную запись Guest .
Хранилище моментальных снимков обычно находится на распространителе. Для получения дополнительных сведений о хранилищах моментальных снимков см. подраздел «З. Доступ к хранилищу моментального снимка» ниже в этом разделе.
Тип проверки подлинности | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows используется, если задано одно из следующих значений: — Transact-SQL: значение 1 для @distributor_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Integrated для свойства DistributorSecurityMode. Командная строка агента слияния: значение 1 для параметра -DistributorSecurityMode. |
Агент слияния соединяется с распространителем в контексте пользователя Windows, заданного для соединения со службами IIS (Г). Если распространитель и службы IIS находятся на разных компьютерах и для соединения используется встроенная проверка подлинности (Г), на сервере IIS необходимо включить делегирование Kerberos. Дополнительные сведения см. в документации по Windows. |
Проверка подлинности SQL Server используется, если указан один из следующих вариантов: — Transact-SQL: значение 0 для @distributor_security_mode параметра sp_addmergepullsubscription_agent.— Объекты RMO: значение Standard для свойства DistributorSecurityMode. Командная строка агента слияния: значение 0 для параметра -DistributorSecurityMode. |
Transact-SQL: @distributor_login параметры sp_addmergepullsubscription_agent@distributor_password .RMO: DistributorLogin и DistributorPassword Командная строка агента слияния: -DistributorLogin и -DistributorPassword. |
G. Соединение с FTP-сервером
Пользователь Windows для этого соединения задается, только если файлы моментального снимка загружаются с FTP-сервера (а не из сетевой папки) на сервер IIS перед тем, как применить этот моментальный снимок к подписчику. Дополнительные сведения см. в статье Передача моментальных снимков через FTP.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows | Transact-SQL: @ftp_login параметры sp_addmergepublication@ftp_password .Объекты RMO: FtpLogin и FtpPassword. |
H. Доступ к хранилищу моментальных снимков
Доступ к хранилищу моментальных снимков осуществляется посредником репликации слиянием, который находится на сервере IIS.
Тип проверки подлинности. | Где задана проверка подлинности |
---|---|
Проверка подлинности Windows | Агент слияния соединяется с хранилищем моментального снимка в контексте пользователя Windows, заданного для соединения со службами IIS (Г). Если хранилище моментальных снимков и службы IIS находятся на разных компьютерах и для соединения используется встроенная проверка подлинности (Г), на сервере IIS необходимо включить делегирование Kerberos. Дополнительные сведения см. в документации по Windows. |
I. Учетная запись пула приложений для служб IIS
Эта учетная запись используется для запуска процесса W3wp.exe на компьютере под управлением IIS для Windows Server 2003 или процесса Dllhost.exe в Windows 2000. Эти процессы размещают приложения на компьютере под управлением IIS, например прослушиватель Репликация SQL Server и средство согласования репликации слиянием. Эта учетная запись должна иметь разрешения на чтение и выполнение следующих DLL-библиотек репликации на сервере IIS:
Replisapi
Replrec
Replprov
Msgprox
Xmlsub
Эта учетная запись должна быть также членом группы IIS_WPG. Дополнительные сведения см. в разделе "Настройка разрешений для прослушивателя Репликация SQL Server" в разделе "Настройка IIS для веб-синхронизации".
Тип учетной записи | Где задана учетная запись |
---|---|
Нужное разрешение имеют все пользователи Windows. | Диспетчер служб IIS. |