SQL Server 2005 - Восстановление зашифрованной БД на другом сервере - PullRequest
3 голосов
/ 16 октября 2008

Я создал резервную копию зашифрованной БД (симметричный ключ / сертификат) и восстановил его на другом сервере.

К сожалению, у нас проблемы с расшифровкой ... в надежде кто-то может помочь

В восстановленной БД я вижу симметричный ключ и сертификат в SSMS, но когда я пытаюсь открыть ключ с помощью сертификата (открыть симметрично ключ KeyA расшифровка сертификатом CertB) получаю следующий очень описательный ошибка:

Сообщение 15466, уровень 16, состояние 1, строка 1 Произошла ошибка при расшифровке.

Есть идеи?

Заранее спасибо.

Ответы [ 4 ]

3 голосов
/ 22 октября 2008

http://blogs.msdn.com/lcris/archive/2007/11/16/sql-server-2005-restoring-the-backup-of-a-database-that-uses-encryption.aspx отвечает на это:

"Когда вы восстанавливаете базу данных, которая использует функции шифрования, вам нужно позаботиться только об одном - если главный ключ базы данных (DbMK) нуждается в шифровании с помощью главного ключа службы (SMK), вам необходимо восстановить это шифрование Обратите внимание, что это шифрование выполняется по умолчанию при создании DbMK, но оно может быть намеренно отброшено, если вы хотите более жесткий контроль доступа к зашифрованным данным. В любом случае, если у вас было такое шифрование SMK для DbMK, выполните следующие шаги: Восстановить это следующие:

ОТКРЫТИЕ ОТКРЫТИЯ КЛАВИШИ МАСТЕРА ПО ПАРОЛУ = 'пароль' ALTER MASTER KEY ДОБАВЬТЕ ШИФРОВАНИЕ СЕРВИСНЫМ MASTER KEY ЗАКРЫТЬ МАСТЕР КЛЮЧ

Вот и все - функции шифрования базы данных теперь должны работать так же, как при создании резервной копии. Также обратите внимание, что не имеет значения, восстанавливаете ли вы базу данных на сервере, где была сделана резервная копия, или в другом месте. Единственное, что имеет значение для этой процедуры, - это то, что вы знаете один из паролей, защищающих DbMK "

1 голос
/ 21 февраля 2019

Главный ключ был расшифрован главным ключом службы на исходном сервере, и мы расшифровали главный ключ с паролем в месте назначения. Я изменил мастер-ключ для расшифровки с помощью мастер-ключа сервиса, и теперь он работает.

0 голосов
/ 09 апреля 2012

http://social.msdn.microsoft.com/forums/en-US/sqlsecurity/thread/34c9c35c-2d08-4873-abfd-aae40240dfe7/?prof=required

Эта ссылка работала для меня, перейдите по 2 ссылкам для резервного копирования / восстановления

Вы можете выполнить восстановление с целевого сервера, используя UNC, вам не нужно копировать файл.

0 голосов
/ 17 октября 2008

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

Надеюсь, этот ответ поможет и не слишком не по пути. :)

...