Поделиться через


Модель безопасности агента репликации

Изменения: 12 декабря 2006 г.

Модель безопасности агента репликации предоставляет возможность точного управления учетными записями, под которыми агенты репликации выполняются и устанавливают соединения: для каждого агента может быть задана своя учетная запись. Дополнительные сведения о задании учетных записей см. в разделе Управление именами входа и паролями в репликации.

ms151868.note(ru-ru,SQL.90).gifВажно!
Если репликацию настраивает член фиксированной серверной роли sysadmin, агенты репликации можно настроить для олицетворения учетной записи агента SQL Server. Это можно сделать, если не задавать имя входа и пароль для агента репликации, однако такой подход не рекомендуется. Вместо этого для обеспечения надежной защиты рекомендуется задать учетную запись для каждого агента с минимальными разрешениями, описанными в подразделе «Разрешения, необходимые для агентов» ниже в этом разделе.

Агенты репликации, как и все исполняемые объекты, запускаются в контексте учетной записи Windows. Агенты выполняют соединения встроенной безопасности Windows, используя эту учетную запись. Учетная запись, под которой выполняется агент, зависит от того, как он был запущен:

  • Запуск агента из задания агента SQL Server (по умолчанию): Когда для запуска агента репликации используется задание агента SQL Server, агент репликации выполняется в контексте учетной записи, указанной при настройке репликации. Дополнительные сведения об агенте SQL Server и репликации см. в подразделе «Безопасность агентов под управлением агента SQL Server» далее в этом разделе. Сведения о разрешениях, необходимых для учетной записи, под которой выполняется агент SQL Server, см. в разделе Настройка агента SQL Server.
  • Запуск агента из командной строки MS-DOS или непосредственно, или с помощью сценария: Агент выполняется в контексте учетной записи пользователя, запустившего его из командной строки.
  • Запуск агента из приложения, использующего объекты RMO или элемент управления ActiveX: Агент выполняется в контексте приложения, которое вызывает объект RMO или элемент управления ActiveX.
    ms151868.note(ru-ru,SQL.90).gifПримечание.
    Элементы управления ActiveX являются устаревшими.

Рекомендуется выполнять соединение в контексте встроенной безопасности Windows. В целях обратной совместимости также можно использовать безопасность SQL Server. Дополнительные сведения о рекомендуемых подходах см. в разделе Рекомендации по защите репликации.

Разрешения, необходимые для агентов

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

ms151868.note(ru-ru,SQL.90).gifПримечание.
С помощью средства «Управление учетными записями» в Windows Vista можно запретить административный доступ к хранилищу моментального снимка. Поэтому необходимо явно предоставить разрешения на доступ к хранилищу моментального снимка учетным записям Windows, которые используются агентом моментальных снимков, агентом распространителя и агентом слияния. Это необходимо делать даже в том случае, если эти учетные записи Windows являются членами группы «Администраторы». Дополнительные сведения см. в разделе Защита папки моментальных снимков.
Агент Разрешения

Агент моментальных снимков

При соединении с распространителем используется учетная запись Windows, под которой выполняется агент. Эта учетная запись должна удовлетворять следующим требованиям:

  • Она должна быть как минимум членом фиксированной роли базы данных db_owner в базе данных распространителя.
  • Иметь разрешение на запись в хранилище моментального снимка.

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

Агент чтения журнала

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

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

Агент распространителя для принудительной подписки

При соединении с распространителем используется учетная запись Windows, под которой выполняется агент. Эта учетная запись должна удовлетворять следующим требованиям:

  • Она должна быть как минимум членом фиксированной роли базы данных db_owner в базе данных распространителя.
  • Она должна входить в список доступа к публикации.
  • Она должна иметь разрешение на чтение хранилища моментальных снимков.
  • Она должна иметь разрешение на чтение каталога, в который был установлен поставщик OLE DB для подписчика, если подписка предназначена для подписчика, не являющегося подписчиком SQL Server.

Учетная запись, используемая для соединения с подписчиком, должна быть как минимум членом фиксированной роли db_owner базы данных подписки или иметь аналогичные разрешения, если подписка предназначена для подписчика, отличного от подписчика SQL Server.

Агент распространителя для подписки по запросу

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

Учетная запись, используемая для соединения с распространителем, должна удовлетворять следующим требованиям:

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

Агент слияния для принудительной подписки

При подключениях к издателю и распространителю используется та учетная запись Windows, под которой выполняется агент. Эта учетная запись должна удовлетворять следующим требованиям:

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

Учетная запись, используемая для соединения с подписчиком, должна быть как минимум членом фиксированной роли базы данных db_owner подписки.

Агент слияния для подписки по запросу

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

Учетная запись, используемая для соединения с издателем и распространителем, должна удовлетворять следующим требованиям:

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

Агент чтения очереди

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

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

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

Безопасность агентов под управлением агента SQL Server

При настройке репликации с помощью среды SQL Server Management Studio, процедур Transact-SQL или объектов RMO по умолчанию для каждого агента создается задание агента SQL Server. Затем агенты выполняются в контексте соответствующего шага задания, вне зависимости от того, выполняются ли они постоянно, по расписанию или по требованию. Эти задания можно просмотреть в папке Задания в среде SQL Server Management Studio. В следующей таблице перечислены имена заданий.

Агент Имя задания

Агент моментальных снимков

<Издатель>-<база данных публикации>-<публикация>-<integer>

Агент моментальных снимков для секции публикации слиянием

Dyn_<издатель>-<база данных публикации>-<публикация>-<GUID>

Агент чтения журнала

<Издатель>-<база данных публикации>-<integer>

Агент слияния для подписок по запросу

<Издатель>-<база данных публикации>-<публикация>-<подписчик>-<база данных подписок>-<integer>

Агент слияния для принудительных подписок

<Издатель>-<база данных публикации>-<публикация>-<подписчик>-<integer>

Агент распространителя для принудительных подписок

<Издатель>-<база данных публикации>-<публикация>-<подписчик>-<integer>1

Агент распространителя для подписок по запросу

<Издатель>-<база данных публикации>-<публикация>-<подписчик>-<база данных подписок>-<GUID>2

Агент распространителя для принудительных подписок подписчиков, отличных от подписчика SQL Server

<Издатель>-<база данных публикации>-<публикация>-<подписчик>-<integer>

Агент чтения очереди

[<Distributor>].<integer>

1 Для принудительных подписок на публикации Oracle именем задания является <издатель>-<издатель>, а не <издатель>-<база данных публикации>.

2 Для подписок по запросу на публикации Oracle именем задания является <издатель>-<база данных распространителя>, а не <издатель>-<база данных публикации>.

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

  • Сначала учетная запись сопоставляется с учетными данными с помощью инструкции Transact-SQL CREATE CREDENTIAL. Учетные записи-посредники агента SQL Server используют учетные данные для хранения сведений об учетных записях пользователей Windows.
  • Вызывается хранимая процедура sp_add_proxy, и учетные данные используются для создания учетной записи-посредника. Дополнительные сведения об учетных записях-посредниках см. в разделе Создание учетных записей-посредников агента SQL Server.
ms151868.note(ru-ru,SQL.90).gifПримечание.
Эти сведения предоставляются для понимания, что происходит при запуске агентов в соответствующих контекстах безопасности. Необязательно взаимодействовать непосредственно с учетными данными или созданными учетными записями-посредниками.

См. также

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

Рекомендации по защите репликации
Защита папки моментальных снимков

Другие ресурсы

Вопросы безопасности репликации

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

12 декабря 2006 г.

Измененное содержимое
  • Добавлено замечание о требованиях к папке моментальных снимков, специфичных для операционной системы Windows Vista.