Предотвращение угроз и уязвимости для безопасности (репликация)
В этом разделе приводятся методы снижения угроз для топологии репликации.
Шифрование
Шифрование представляет собой процесс преобразования данных в форму, которую невозможно прочитать без специального ключа, поэтому прочитать данные могут только назначенные пользователи. Репликация не производит шифрование данных, хранящихся в таблицах или передаваемых через сетевые соединения. Это сделано намеренно, так как шифрование доступно на уровне транспортировки в различных технологиях, включая следующие стандартные технологии: виртуальные частные сети (VPN), протокол SSL и протокол IPSEC. Для соединений между компьютерами в топологии репликации рекомендуется использовать один из этих методов. Дополнительные сведения см. в разделе Включение шифрования соединений в ядре СУБД (диспетчер конфигурации SQL Server). Сведения об использовании VPN и SSL для репликации данных через Интернет см. в разделе Обеспечение безопасности репликации через Интернет.
Если используется протокол SSL для защиты соединения между компьютерами в топологии репликации, задайте значение 1 или 2 для параметра -EncryptionLevel каждого агента репликации (рекомендуется значение 2). Значение 1 указывает, что шифрование будет использоваться, но агент не будет проверять, подписан ли SSL-сертификат сервера доверенным издателем; значение 2 указывает, что будет проверяться подпись сертификата. Параметры агента могут быть заданы в профиле агента или в командной строке. Дополнительные сведения см. в следующих разделах:
Репликация взаимодействует с главными ключами базы данных, которые используются для шифрования данных, следующим образом.
Если главный ключ находится в базе данных, участвующей в репликации (база данных публикации, база данных подписки или база данных распространителя), репликация шифрует и дешифрует пароли агентов в этой базе данных с помощью симметричного ключа базы данных SQL Server 2012. Если используются главные ключи, то их необходимо создать во всех базах данных, участвующих в репликации. Дополнительные сведения о создании главных ключей см. в разделе CREATE MASTER KEY (Transact-SQL).
При репликации главные ключи не реплицируются. Если главный ключ требуется на подписчике, его необходимо экспортировать из базы данных публикации с помощью команды BACKUP MASTER KEY, а затем импортировать его в базу данных подписки с использованием команды RESTORE MASTER KEY. Дополнительные сведения см. в разделах BACKUP MASTER KEY (Transact-SQL) и RESTORE MASTER KEY (Transact-SQL).
Если главный ключ определен для прикрепляемой базы данных подписки, укажите пароль главного ключа с помощью параметра @db_master_key_password хранимой процедуры sp_attachsubscription (Transact-SQL). Такое действие позволяет присоединять базу данных на подписчике.
Дополнительные сведения о шифровании и главных ключах см. в разделе Иерархия средств шифрования.
Репликация позволяет публиковать данные зашифрованных столбцов. Для расшифровки и использования этих данных на подписчике ключ, который был использован при шифровании данных на издателе, должен также располагаться и на подписчике. Репликация не предоставляет безопасного механизма для передачи ключей шифрования. Необходимо вручную повторно создать ключ шифрования на подписчике. Дополнительные сведения см. в разделе Репликация данных в зашифрованные столбцы (среда SQL Server Management Studio).
См. также
Основные понятия
Идентификатор и управление доступом (репликация)
Общие сведения о безопасности (репликация)