Просмотр и изменение параметров безопасности репликации
В данном разделе описывается процесс просмотра и изменения параметров безопасности репликации в SQL Server при помощи среды SQL Server Management Studio, Transact-SQLили объектов RMO. Например, может потребоваться изменение подключения агента чтения журнала к издателю для использования проверки подлинности SQL Server вместо встроенной проверки подлинности Windows, или может потребоваться изменение учетных данных для запуска задания агента при изменении пароля учетной записи Windows. Дополнительные сведения о разрешениях, необходимых каждому агенту, см. в разделе Модель безопасности агента репликации.
В этом разделе
Перед началом работы
Для просмотра и изменения параметров безопасности репликации используется:
Перед началом
ОграниченияКакие именно хранимые процедуры для этого применяются, зависит от типа агента и соединения с сервером.
Используемые классы и свойства RMO зависят от типа агента и типа соединения с сервером.
безопасностьВ целях безопасности пароли, возвращаемые хранимыми процедурами репликации в результирующих наборах, будут замаскированы.
PermissionsИспользование среды SQL Server Management Studio
Просмотр и изменение настроек безопасности осуществляется в следующих диалоговых окнах:
В диалоговом окне Обновление паролей репликации , которое доступно из папки Репликация в среде SQL Server Management Studio. При изменении пароля для учетной записи SQL Server или учетной записи Windows на сервере в топологии репликации, нужно использовать это диалоговое окно, а не обновлять пароль для каждого агента, использующего эту учетную запись. Если агенты на нескольких серверах используют одну и ту же учетную запись, то нужно подключиться к каждому из этих серверов и изменить пароль. Обновление пароля осуществляется везде, где его использует репликация. В других местах, например на связанных серверах, обновление пароля не происходит.
Страница Безопасность агентов диалогового окна Свойства публикации — <Publication> . Дополнительные сведения о доступе к этому диалоговому окну см. в разделе Просмотр и изменение свойств публикации.
Диалоговое окно Свойства подписки — <Subscription> . Дополнительные сведения о доступе к этому диалоговому окну см. в разделах Просмотр и изменение свойств принудительной подписки и Просмотр и изменение свойств подписки по запросу.
Диалоговые окна Свойства распространителя — <Distributor> и Свойства базы данных распространителя — <Database> . Дополнительные сведения о доступе к этим диалоговым окнам см. в разделе Просмотр и изменение свойств издателя и распространителя.
Диалоговое окно Свойства издателя — <Publisher> . Дополнительные сведения о доступе к этому диалоговому окну см. в разделе Просмотр и изменение свойств издателя и распространителя.
Изменение пароля для учетной записи, используемой одним или несколькими агентамиЕсли учетная запись является учетной записью SQL Server, то это диалоговое окно также изменит пароль для учетной записи SQL Server. Если учетная запись является учетной записью Windows, то нужно вначале изменить пароль в Windows. Дополнительные сведения см. в документации по Windows.
После изменения пароля репликации необходимо остановить и перезапустить каждый агент, пользующийся этим паролем, прежде чем изменение вступит в силу для этого агента.
Подключитесь к серверу в среде SQL Server Management Studio, а затем раскройте узел сервера.
Щелкните правой кнопкой мыши папку Репликация , а затем щелкните Обновить пароли репликации.
В диалоговом окне Обновление паролей репликации укажите учетную запись и новый пароль.
Нажмите кнопку ОК.
Изменение настроек безопасности для агента моментальных снимковНа странице Безопасность агентов диалогового окна Свойства публикации — <Publication> нажмите кнопку Настройки безопасности рядом с текстовым полем Агент моментальных снимков.
В диалоговом окне Безопасность агента моментальных снимков укажите учетную запись, под которой должен запускаться агент:
Введите новую учетную запись Windows в текстовое поле Учетная запись агента .
Введите новый надежный пароль в текстовые поля Пароль и Подтверждение пароля .
Укажите контекст, в условиях которого агент должен подключаться с распространителя к издателю. Если вы выбрали С использованием следующего имени входа SQL Server, то вы также должны задать имя входа:
Введите имя входа в текстовое поле Имя входа .
Введите новый надежный пароль в текстовые поля Пароль и Подтверждение пароля .
Если издатель является издателем Oracle, то в диалоговом окне Свойства распространителя — <Distributor> задается контекст соединения. Процедура изменения контекста приведена ниже.
Нажмите кнопку ОК.
Изменение настроек безопасности для агента чтения журналаНа странице Безопасность агентов диалогового окна Свойства публикации — <Publication> нажмите кнопку Настройки безопасности рядом с текстовым полем Агент чтения журнала.
В диалоговом окне Безопасность агента чтения журнала задайте учетную запись, под которой должен запускаться агент:
Введите новую учетную запись Windows в текстовое поле Учетная запись агента .
Введите новый надежный пароль в текстовые поля Пароль и Подтверждение пароля .
Укажите контекст, в условиях которого агент должен подключаться с распространителя к издателю. Если вы выбрали С использованием следующего имени входа SQL Server, то вы также должны задать имя входа:
Введите имя входа в текстовое поле Имя входа .
Введите новый надежный пароль в текстовые поля Пароль и Подтверждение пароля .
Если издатель является издателем Oracle, то в диалоговом окне Свойства распространителя — <Distributor> задается контекст соединения. Измените контекст с использованием следующей процедуры.
Нажмите кнопку ОК.
Для каждой публикуемой базы данных существует только один агент чтения журнала. Изменение настроек безопасности для этого агента в одной публикации влияет на настройки всех публикаций в базе данных публикации.
Изменение контекста, под которым агент моментальных снимков и агент чтения журнала для публикации Oracle осуществляют соединения с издателемНа странице Издатели диалогового окна Свойства распространителя — <Distributor> нажмите кнопку свойств ( . ) рядом с издателем.
В разделе Соединение агента с издателем задайте имя входа и пароль, используемые настроенной вами схемой административного пользователя репликации. Дополнительные сведения см. в статье Настройка издателя Oracle.
Нажмите кнопку ОК.
Изменение настроек безопасности агента распространителя для принудительной подпискиВ диалоговом окне Свойства подписки —<Subscription> на издателе можно внести следующие изменения.
Чтобы изменить учетную запись, от имени которой агент распространителя запускается и устанавливает соединение с распространителем, щелкните строку Учетная запись процесса агента, а затем нажмите кнопку свойств ( . ) в строке. Задайте учетную запись и пароль в диалоговом окне Безопасность агента распространителя .
Чтобы изменить контекст, в котором агент распространителя подключается к подписчику, щелкните строку Соединение с подписчиком, а затем нажмите кнопку свойств ( . ) в строке. Задайте контекст в диалоговом окне Ввод сведений о соединении .
При использовании подписок, обновляемых посредством очередей, заданный здесь контекст используется также агентом чтения очереди для подключений к подписчику.
Нажмите кнопку ОК.
Изменение настроек безопасности агента распространителя для подписки по запросуВ диалоговом окне Свойства подписки —<Subscription> на подписчике можно внести следующие изменения.
Чтобы изменить учетную запись, от имени которой агент распространителя запускается и устанавливает соединения с подписчиком, щелкните строку Учетная запись процесса агента, а затем нажмите кнопку свойств ( . ) в строке. Задайте учетную запись и пароль в диалоговом окне Безопасность агента распространителя .
При использовании подписок, обновляемых посредством очередей, заданный здесь контекст используется также агентом чтения очереди для подключений к подписчику.
Чтобы изменить контекст, в котором агент распространителя соединяется с распространителем, щелкните строку Соединение с распространителем, а затем нажмите кнопку свойств ( . ) в строке. Задайте контекст в диалоговом окне Ввод сведений о соединении .
Нажмите кнопку ОК.
Изменение настроек безопасности агента слияния для принудительной подпискиВ диалоговом окне Свойства подписки —<Subscription> на издателе можно внести следующие изменения.
Чтобы изменить учетную запись, от имени которой агент слияния запускается и устанавливает соединения с издателем и распространителем, щелкните строку Учетная запись процесса агента, а затем нажмите кнопку свойств ( . ) в строке. Задайте учетную запись и пароль в диалоговом окне Безопасность агента слияния .
Чтобы изменить контекст, в котором агент слияния соединяется с подписчиком, щелкните строку Соединение с подписчиком, а затем нажмите кнопку свойств ( . ) в строке. Задайте контекст в диалоговом окне Ввод сведений о соединении .
Нажмите кнопку ОК.
Изменение настроек безопасности агента слияния для подписки по запросуВ диалоговом окне Свойства подписки —<Subscription> на подписчике можно внести следующие изменения.
Чтобы изменить учетную запись, от имени которой агент слияния запускается и устанавливает соединения с подписчиком, щелкните строку Учетная запись процесса агента, а затем нажмите кнопку свойств ( . ) в строке. Задайте учетную запись и пароль в диалоговом окне Безопасность агента слияния .
Чтобы изменить контекст, в котором агент слияния подключается к издателю и распространителю, щелкните строку Соединение с издателем, а затем нажмите кнопку свойств ( . ) в строке. Задайте контекст в диалоговом окне Ввод сведений о соединении .
Нажмите кнопку ОК.
Изменение учетной записи, под которой запускается агент чтения очередиНа странице Общие диалогового окна Свойства распространителя — <Distributor> нажмите кнопку свойств ( . ) возле базы данных распространителя.
В диалоговом окне Свойства базы данных распространителя —<Database> нажмите кнопку Настройки безопасности рядом с текстовым полем Учетная запись процесса агента.
В диалоговом окне Безопасность агента чтения очереди задайте учетную запись, под которой агент запускается и устанавливает соединение с распространителем:
Введите новую учетную запись Windows в текстовое поле Учетная запись процесса
Введите новый надежный пароль в текстовые поля Пароль и Подтверждение пароля .
Нажмите кнопку ОК.
Для каждой базы распространителя существует только один агент чтения очереди. Изменение настроек безопасности агента оказывает влияние на параметры всех публикаций на всех издателях, использующих эту базу данных распространителя.
Изменение контекста, под которым агент чтения очереди устанавливает соединения с издателемНа странице Издатели диалогового окна Свойства распространителя — <Distributor> нажмите кнопку свойств ( . ) рядом с издателем.
В разделе Соединение агента с издателем задайте значение Выполнять олицетворение учетной записи процесса агента или Проверка подлинности SQL Server для параметра Режим соединения агента . Если вы задали Проверка подлинности SQL Server, то также введите значения для Имя входа и Пароль.
Нажмите кнопку ОК.
Для каждой базы распространителя существует только один агент чтения очереди. Изменение настроек безопасности агента оказывает влияние на параметры всех публикаций на всех издателях, использующих эту базу данных распространителя.
Изменение контекста, под которым агент чтения очереди устанавливает соединения с подписчиком- Агент чтения очереди использует тот же контекст соединения, который используется агентом распространителя для подписки. Дополнительные сведения см. выше в описании процедуры для агента распространителя.
В диалоговом окне Свойства подписки —<Subscription> на подписчике щелкните строку Соединение с издателем, а затем нажмите кнопку свойств ( … ) в этой строке.
В диалоговом окне Ввод сведений о соединении выберите один из следующих параметров:
Использовать имя входа со связанного или удаленного сервера. Выберите этот параметр, если вы определили удаленный сервер или связанный сервер между подписчиком и издателем с помощью sp_addserver (Transact-SQL),sp_addlinkedserver (Transact-SQL), SQL Server Management Studio или другого метода.
Использовать проверку подлинности SQL Server со следующим именем входа и паролем. Выберите этот параметр, если вы не определили удаленный сервер или связанный сервер между подписчиком и издателем. Репликация создаст связанный сервер. Указанная учетная запись уже должна существовать на издателе.
Нажмите кнопку ОК.
Данная процедура изменяет метод, используемый триггерами репликации для соединения между подписчиком и издателем при внесении изменений на подписчике. Также можно изменить настройки, связанные с агентом распространителя, для подписки, обновляемой немедленно. Дополнительные сведения см. в описании процедуры, приведенном выше в данном разделе.
Данная процедура применяется только к подпискам по запросу. Для принудительных подписок нужно использовать хранимую процедуру sp_link_publication (Transact-SQL).
Изменение пароля для административного соединения между издателем и распространителемНа странице Издатели диалогового окна Свойства распространителя — <Distributor> введите надежный пароль в текстовые поля Пароль и Подтверждение пароля.
Нажмите кнопку ОК.
На странице Общие диалогового окна Свойства издателя — <Publisher> введите надежный пароль в текстовые поля Пароль и Подтверждение пароля.
Нажмите кнопку ОК.
Использование Transact-SQL
При выполнении всех следующих процедур, если это возможно, предлагайте пользователю вводить учетные данные безопасности во время выполнения. При хранении учетных данных в файле скрипта необходимо защитить этот файл во избежание несанкционированного доступа.
Изменение всех экземпляров сохраненного пароля на сервере репликацииНа сервере базы данных master в топологии репликации выполните хранимую процедуру sp_changereplicationserverpasswords. Укажите учетную запись Microsoft Windows или имя входа Microsoft SQL Server в параметре @login и новый пароль в параметре @password . В результате выполнения этой операции производится изменение всех экземпляров пароля, используемого всеми агентами сервера для соединения с другими серверами топологии.
Чтобы изменить имя входа и пароль для соединения с определенным сервером топологии (например, с сервером распространителя или подписчика), необходимо задать его имя в параметре @server .
Повторите шаг 1 на каждом из серверов в топологии репликации, где необходимо изменить пароль.
После изменения пароля репликации необходимо остановить и перезапустить каждый агент, пользующийся этим паролем, прежде чем изменение вступит в силу для этого агента.
Изменение настроек безопасности для агента моментальных снимковНа издателе выполните хранимую процедуру sp_helppublication_snapshot, задав значение параметра @publication . Она возвращает текущие параметры безопасности агента моментальных снимков.
На издателе выполните хранимую процедуру sp_changepublication_snapshot, задав значение параметра @publication , а также один из следующих параметров безопасности или несколько.
Чтобы изменить учетную запись Windows, с которой работает агент, или изменить пароль для этой учетной записи, задайте параметры @job_login и @job_password .
Чтобы изменить режим безопасности, который используется для соединения с издателем, укажите значение 1 или 0 в параметре @publisher_security_mode .
Когда режим безопасности, используемый для соединения с издателем, меняется с 1 на 0 или когда меняется имя входа SQL Server, используемое для этого соединения, укажите параметры @publisher_login и @publisher_password .
Если издатель настраивается с удаленным распространителем, то значения, передаваемые для всех аргументов, включая job_login и job_password, передаются распространителю в формате обычного (незашифрованного) текста. Прежде чем выполнять эту хранимую процедуру, необходимо зашифровать соединение между издателем и его удаленным распространителем. Дополнительные сведения см. в разделе Включение шифрования соединений в компоненте Database Engine (диспетчер конфигураций SQL Server).
Изменение настроек безопасности для агента чтения журналаНа издателе выполните хранимую процедуру sp_helplogreader_agent, задав значение параметра @publisher . Она возвращает текущие параметры безопасности агента чтения журнала.
На издателе выполните хранимую процедуру sp_changelogreader_agent, задав значение параметра @publication , а также один из следующих параметров безопасности или несколько.
Чтобы изменить учетную запись Windows, с которой работает агент, или изменить пароль для этой учетной записи, задайте параметры @job_login и @job_password .
Чтобы изменить режим безопасности, который используется для соединения с издателем, укажите значение 1 или 0 в параметре @publisher_security_mode .
Когда режим безопасности, используемый для соединения с издателем, меняется с 1 на 0 или когда меняется имя входа SQL Server, используемое для этого соединения, укажите параметры @publisher_login и @publisher_password .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.
Если издатель настраивается с удаленным распространителем, то значения, передаваемые для всех аргументов, включая job_login и job_password, передаются распространителю в формате обычного (незашифрованного) текста. Прежде чем выполнять эту хранимую процедуру, необходимо зашифровать соединение между издателем и его удаленным распространителем. Дополнительные сведения см. в разделе Включение шифрования соединений в компоненте Database Engine (диспетчер конфигураций SQL Server).
Изменение настроек безопасности агента распространителя для принудительной подпискиНа издателе в базе данных публикации выполните хранимую процедуру sp_helpsubscription, задав значение параметра @publication и @subscriber . Она возвращает свойства подписки, включая параметры безопасности агента распространителя на распространителе.
На издателе в базе данных публикации выполните хранимую процедуру sp_changesubscription, задав значение параметров @publication , @subscriber , @subscriber_db , значение all в параметре @article , а также имя свойства безопасности в параметре @property и его новое значение для @value .
Повторите шаг 2 для каждого из следующих свойств безопасности, которые подвергаются изменениям.
Чтобы изменить учетную запись Windows, с которой работает агент, или пароль для этой учетной записи, укажите значение distrib_job_password в параметре @property и задайте новый пароль в параметре @value . Если изменяется учетная запись, повторите шаг 2, указав значение distrib_job_login в параметре @property и новую учетную запись Windows в параметре @value .
Чтобы изменить режим безопасности, который используется для соединения с подписчиком, задайте значение subscriber_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
Если режим безопасности подписчика меняется на проверку подлинности SQL Server или меняются данные входа для проверки подлинности SQL Server, укажите значение subscriber_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение subscriber_login в параметре @property и задав новое имя входа в параметре @value .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.
При настройке издателя с удаленным распространителем значения, передаваемые для всех аргументов, включая distrib_job_login и distrib_job_password, передаются распространителю в виде обычного текста. Прежде чем выполнять эту хранимую процедуру, необходимо зашифровать соединение между издателем и его удаленным распространителем. Дополнительные сведения см. в разделе Включение шифрования соединений в компоненте Database Engine (диспетчер конфигураций SQL Server).
Изменение настроек безопасности агента распространителя для подписки по запросуНа подписчике выполните хранимую процедуру sp_helppullsubscription, задав значение параметра @publication . Она возвращает список свойств подписки, включая параметры безопасности агента распространителя на подписчике.
Выполните процедуру sp_change_subscription_properties, задав значение параметров @publisher , @publisher_db , @publication , а также имя свойства безопасности в параметре @property и его новое значение в параметре @value .
Повторите шаг 2 для каждого из следующих свойств безопасности, которые подвергаются изменениям.
Чтобы изменить учетную запись Windows, с которой работает агент, или пароль для этой учетной записи, укажите значение distrib_job_password в параметре @property и задайте новый пароль в параметре @value . Если изменяется учетная запись, повторите шаг 2, указав значение distrib_job_login в параметре @property и новую учетную запись Windows в параметре @value .
Чтобы изменить режим безопасности, используемый для соединения с распространителем, укажите значение distributor_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
Если режим безопасности распространителя меняется на проверку подлинности SQL Server или меняются данные входа для проверки подлинности SQL Server, укажите значение distributor_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение distributor_login в параметре @property и задав новое имя входа в параметре @value .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.
Изменение настроек безопасности агента слияния для принудительной подпискиНа издателе в базе данных публикации выполните хранимую процедуру sp_helpmergesubscription, задав значение параметра @publication , @subscriber, и @subscriber_db . Она возвращает свойства подписки, включая параметры безопасности агента слияния на распространителе.
На издателе в базе данных публикации выполните хранимую процедуру sp_changemergesubscription, задав значение параметров @publication , @subscriber , @subscriber_db , а также имя свойства безопасности в параметре @property и его новое значение в параметре @value .
Повторите шаг 2 для каждого из следующих свойств безопасности, которые подвергаются изменениям.
Чтобы изменить учетную запись Windows, от которой запускается агент (или только пароль для нее), укажите значение merge_job_password в параметре @property и задайте новый пароль в параметре @value . Если изменяется учетная запись, повторите шаг 2, указав значение merge_job_password в параметре @property и новую учетную запись Windows в параметре @value .
Чтобы изменить режим безопасности, который используется для соединения с подписчиком, задайте значение subscriber_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
Если режим безопасности подписчика меняется на проверку подлинности SQL Server или меняются данные входа для проверки подлинности SQL Server, укажите значение subscriber_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение subscriber_login в параметре @property и задав новое имя входа в параметре @value .
Чтобы изменить режим безопасности, который используется для соединения с издателем, укажите значение publisher_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
При переключении режима безопасности издателя на проверку подлинности SQL Server или сведений об имени входа для нее задайте значение publisher_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение publisher_login в параметре @property и задав новое имя входа в параметре @value .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.
При настройке издателя для работы с удаленным распространителем все передаваемые значения свойств, включая merge_job_login и merge_job_password, передаются распространителю в виде обычного текста. Прежде чем выполнять эту хранимую процедуру, необходимо зашифровать соединение между издателем и его удаленным распространителем. Дополнительные сведения см. в разделе Включение шифрования соединений в компоненте Database Engine (диспетчер конфигураций SQL Server).
Изменение настроек безопасности агента слияния для подписки по запросуНа подписчике выполните хранимую процедуру sp_helpmergepullsubscription, задав значение параметра @publication . Она возвращает свойства подписки, включая параметры безопасности агента слияния на подписчике.
Выполните процедуру sp_change_subscription_properties, задав значение параметров @publisher , @publisher_db , @publication , а также имя свойства безопасности в параметре @property и его новое значение в параметре @value .
Повторите шаг 2 для каждого из следующих свойств безопасности, которые подвергаются изменениям.
Чтобы изменить учетную запись Windows, с которой работает агент, или пароль для этой учетной записи, укажите значение merge_job_password в параметре @property и новый пароль в параметре @value . Если изменяется учетная запись, повторите шаг 2, указав значение merge_job_password в параметре @property и новую учетную запись Windows в параметре @value .
Чтобы изменить режим безопасности, используемый для соединения с распространителем, укажите значение distributor_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
Если режим безопасности распространителя меняется на проверку подлинности SQL Server или меняются данные входа для проверки подлинности SQL Server, укажите значение distributor_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение distributor_login в параметре @property и задав новое имя входа в параметре @value .
Чтобы изменить режим безопасности, который используется для соединения с издателем, укажите значение publisher_security_mode в параметре @property и значение 1 (встроенная проверка подлинности Windows) или 0 (проверка подлинности SQL Server) в параметре @value .
При переключении режима безопасности издателя на проверку подлинности SQL Server или сведений об имени входа для нее задайте значение publisher_password в параметре @property и задайте новый пароль в параметре @value . Повторите шаг 2, указав значение publisher_login в параметре @property и задав новое имя входа в параметре @value .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.
Изменение параметров безопасности агента моментальных снимков для создания моментального снимка с фильтрацией для подписчикаНа издателе выполните хранимую процедуру sp_helpdynamicsnapshot_job, задав значение параметра @publication . В результирующем наборе запомните значение параметра job_name , соответствующее которому задание будет изменять секцию подписчика.
На издателе выполните хранимую процедуру sp_changedynamicsnapshot_job, задав значение параметра @publication и указав полученное на шаге 1 значение в параметре dynamic_snapshot_jobname , а также новый пароль в параметре @job_password либо введя имя входа и пароль учетной записи Windows, от имени которой запущен агент, в параметрах @job_login и @job_password .
Если издатель настраивается с удаленным распространителем, то значения, передаваемые для всех аргументов, включая job_login и job_password, передаются распространителю в формате обычного (незашифрованного) текста. Прежде чем выполнять эту хранимую процедуру, необходимо зашифровать соединение между издателем и его удаленным распространителем. Дополнительные сведения см. в разделе Включение шифрования соединений в компоненте Database Engine (диспетчер конфигураций SQL Server).
Изменение параметров безопасности для агента чтения очередиНа распространителе выполните хранимую процедуру sp_helpqreader_agent. Она возвращает текущую учетную запись Windows, от которой запускается агент чтения очереди.
- На распространителе выполните хранимую процедуру sp_changeqreader_agent, указав параметры учетной записи Windows в полях @job_login и @job_password .
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу. Для каждой базы распространителя существует только один агент чтения очереди. Изменение настроек безопасности агента оказывает влияние на параметры всех публикаций на всех издателях, использующих эту базу данных распространителя.
Агент чтения очереди подключается к подписчику с тем же контекстом соединения, который используется агентом распространителя для подписки.
Смена текущего режима безопасности, используемого при немедленном обновлении подписчика при соединении с издателемВ базе данных подписки на подписчике выполните процедуру sp_link_publication. Укажите параметр @publisher , параметр @publication , имя базы данных публикации в параметре @publisher_db и одно из следующих значений параметра @security_mode .
0 — использовать проверку подлинности SQL Server при выполнении обновлений на издателе. При этом необходимо указать допустимое имя входа на издатель в параметрах @login и @password .
1 — при соединении с издателем использовать контекст безопасности пользователя, вносящего изменения на подписчике. Связанные с этим режимом безопасности ограничения см. в разделе sp_link_publication .
2 — использовать существующее определенное пользователем имя входа на связанный сервер, созданное с помощью процедуры sp_addlinkedserver (Transact-SQL).
Смена пароля для удаленного распространителяНа распространителе в базе данных распространителя выполните хранимую процедуру sp_changedistributor_password, указав новый пароль для текущего имени входа в параметре @password .
Напрямую менять пароль для имени входа distributor_admin не рекомендуется.
На каждом издателе, связанном с этим удаленным распространителем, выполните хранимую процедуру sp_changedistributor_password, указав заданный на шаге 1 пароль в параметре @password .
При помощи объектов RMO
По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. Если необходимо хранить учетные данные, используйте службы шифрования , предоставляемые платформой Microsoft Windows .NET Framework.
Изменение всех экземпляров пароля, хранящихся на сервере репликацииСоздайте соединение с сервером репликации с помощью класса ServerConnection .
Создайте экземпляр класса ReplicationServer , используя соединение, созданное на шаге 1.
Вызовите метод ChangeReplicationServerPasswords . Укажите значения следующих параметров.
security_mode — значение типа ReplicationSecurityMode , указывающее тип проверки подлинности, для которой изменяются все экземпляры пароля.
login — имя входа, для которого меняются все экземпляры пароля.
password — новое значение пароля.
По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения приложения. Если необходимо хранить учетные данные, используйте службы шифрования , предоставляемые платформой Windows .NET Framework.
Только члены предопределенной роли сервера sysadmin могут вызвать этот метод.
Повторите шаги 1 — 3 для каждого сервера в топологии репликации, на котором необходимо обновить пароли.
Изменение параметров безопасности агента распространителя для принудительной подписки на публикацию транзакцийСоздайте соединение с издателем с помощью класса ServerConnection .
Создайте экземпляр класса TransSubscription.
Установите для подписки свойства PublicationName, DatabaseName, SubscriberNameи SubscriptionDBName , а в качестве значения для свойства ConnectionContext укажите соединение, созданное на шаге 1.
Чтобы получить свойства объекта, вызовите метод LoadProperties . Если этот метод возвращает значение false, то либо на шаге 3 были неверно определены свойства подписки, либо подписка не существует.
В экземпляре TransSubscriptionзадайте одно или несколько из следующих свойств безопасности.
Чтобы изменить учетные данные для учетной записи Windows, с которой запускается агент, установите поля Login и Password свойства SynchronizationAgentProcessSecurity.
Чтобы при соединении агента с подписчиком использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства SubscriberSecurity значение true.
Чтобы при соединении агента с подписчиком использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства SubscriberSecurity значение false и укажите учетные данные входа подписчика в полях SqlStandardLogin и SqlStandardPassword .
Агент всегда соединяется с распространителем с учетными данными Windows, указанными в свойстве SynchronizationAgentProcessSecurity. Эта учетная запись также используется для установления удаленных соединений с проверкой подлинности Windows.
Если для свойства true в параметре CachePropertyChanges, то для фиксирования изменений на сервере необходимо вызвать метод CommitPropertyChanges (необязательно). Если для свойства false в параметре CachePropertyChanges (по умолчанию), изменения будут отправлены на сервер немедленно.
Изменение параметров безопасности агента распространителя для подписки по запросу на публикацию транзакцийСоздайте соединение с подписчиком с помощью класса ServerConnection .
Установите для подписки свойства PublicationName, DatabaseName, PublisherNameи PublicationDBName , а в качестве значения для свойства ConnectionContext укажите соединение, созданное на шаге 1.
Чтобы получить свойства объекта, вызовите метод LoadProperties . Если этот метод возвращает значение false, то либо на шаге 3 были неверно определены свойства подписки, либо подписка не существует.
В экземпляре TransPullSubscriptionзадайте одно или несколько из следующих свойств безопасности.
Чтобы изменить учетные данные для учетной записи Windows, с которой запускается агент, установите поля Login и Password свойства SynchronizationAgentProcessSecurity.
Чтобы при соединении агента с распространителем использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства DistributorSecurity значение true.
Чтобы при соединении агента с распространителем использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства DistributorSecurity значение false и укажите учетные данные входа распространителя в полях SqlStandardLogin и SqlStandardPassword .
Агент всегда соединяется с подписчиком с учетными данными Windows, указанными в SynchronizationAgentProcessSecurity. Эта учетная запись также используется для установления удаленных соединений с проверкой подлинности Windows.
Если для свойства true в параметре CachePropertyChanges, то для фиксирования изменений на сервере необходимо вызвать метод CommitPropertyChanges (необязательно). Если для свойства false в параметре CachePropertyChanges (по умолчанию), изменения будут отправлены на сервер немедленно.
Изменение параметров безопасности агента слияния для подписки по запросу на публикацию слияниемСоздайте соединение с подписчиком с помощью класса ServerConnection .
Установите для подписки свойства PublicationName, DatabaseName, PublisherNameи PublicationDBName , а в качестве значения для свойства ConnectionContext укажите соединение, созданное на шаге 1.
Чтобы получить свойства объекта, вызовите метод LoadProperties . Если этот метод возвращает значение false, то либо на шаге 3 были неверно определены свойства подписки, либо подписка не существует.
В экземпляре MergePullSubscriptionзадайте одно или несколько из следующих свойств безопасности.
Чтобы изменить учетные данные для учетной записи Windows, с которой запускается агент, установите поля Login и Password свойства SynchronizationAgentProcessSecurity.
Чтобы при соединении агента с распространителем использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства DistributorSecurity значение true.
Чтобы при соединении агента с распространителем использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства DistributorSecurity значение false и укажите учетные данные входа распространителя в полях SqlStandardLogin и SqlStandardPassword .
Чтобы при соединении агента с издателем использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства PublisherSecurity значение true.
Чтобы при соединении агента с издателем использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства PublisherSecurity значение false и укажите учетные данные входа издателя в полях SqlStandardLogin и SqlStandardPassword .
Агент всегда соединяется с подписчиком с учетными данными Windows, указанными в SynchronizationAgentProcessSecurity. Эта учетная запись также используется для установления удаленных соединений с проверкой подлинности Windows.
Если для свойства true в параметре CachePropertyChanges, то для фиксирования изменений на сервере необходимо вызвать метод CommitPropertyChanges (необязательно). Если для свойства false в параметре CachePropertyChanges (по умолчанию), изменения будут отправлены на сервер немедленно.
Изменение параметров безопасности агента слияния для принудительной подписки на публикацию слияниемСоздайте соединение с издателем с помощью класса ServerConnection .
Создайте экземпляр класса MergeSubscription.
Установите для подписки свойства PublicationName, DatabaseName, SubscriberNameи SubscriptionDBName , а в качестве значения для свойства ConnectionContext укажите соединение, созданное на шаге 1.
Чтобы получить свойства объекта, вызовите метод LoadProperties . Если этот метод возвращает значение false, то либо на шаге 3 были неверно определены свойства подписки, либо подписка не существует.
В экземпляре MergeSubscriptionзадайте одно или несколько из следующих свойств безопасности.
Чтобы изменить учетные данные для учетной записи Windows, с которой запускается агент, установите поля Login и Password свойства SynchronizationAgentProcessSecurity.
Чтобы при соединении агента с подписчиком использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства SubscriberSecurity значение true.
Чтобы при соединении агента с подписчиком использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства SubscriberSecurity значение false и укажите учетные данные входа подписчика в полях SqlStandardLogin и SqlStandardPassword .
Чтобы при соединении агента с издателем использовать встроенную проверку подлинности Windows, установите в поле WindowsAuthentication свойства PublisherSecurity значение true.
Чтобы при соединении агента с издателем использовать проверку подлинности SQL Server, установите в поле WindowsAuthentication свойства PublisherSecurity значение false и укажите учетные данные входа издателя в полях SqlStandardLogin и SqlStandardPassword .
Агент всегда соединяется с распространителем с учетными данными Windows, указанными в свойстве SynchronizationAgentProcessSecurity. Эта учетная запись также используется для установления удаленных соединений с проверкой подлинности Windows.
Если для свойства true в параметре CachePropertyChanges, то для фиксирования изменений на сервере необходимо вызвать метод CommitPropertyChanges (необязательно). Если для свойства false в параметре CachePropertyChanges (по умолчанию), изменения будут отправлены на сервер немедленно.
Изменение сведений об имени входа, используемых немедленно обновляемым подписчиком при подключении к издателю транзакцийСоздайте соединение с подписчиком с помощью класса ServerConnection .
Создайте экземпляр класса ReplicationDatabase для базы данных подписки. Укажите значения Name и ServerConnection из шага 1 в параметре ConnectionContext.
Чтобы получить свойства объекта, вызовите метод LoadProperties . Если этот метод возвращает значение false, значит, в шаге 2 были неправильно определены свойства базы данных либо база данных подписки не существует.
Вызовите метод LinkPublicationForUpdateableSubscription , передав следующие параметры.
Publisher — имя издателя.
PublisherDB — имя базы данных публикации.
Publication — имя публикации, на которую подписан немедленно обновляемый подписчик.
Distributor — имя распространителя.
PublisherSecurity - A PublisherConnectionSecurityContext , указывающий тип режима безопасности, используемого немедленно обновляемым подписчиком при соединении с издателем, и учетные данные входа для этого соединения.
Пример (объекты RMO)В этом примере проверяется указанное значение имени входа и изменяются все пароли для указанного имени входа в Windows или имени входа в SQL Server, хранимые репликацией на сервере.
Дальнейшие действия. После изменения параметров безопасности репликации
После изменения имени входа и пароля агента необходимо остановить и повторно запустить агент, чтобы изменения вступили в силу.