繁体   English   中英

SQL Server 2005 - 在其他服务器上还原加密的数据库

[英]SQL Server 2005 - Restoring an encrypted DB on a different server

我已备份加密的数据库(对称密钥/证书)并在不同的服务器上恢复它。

不幸的是,我们遇到了解密问题......希望有人可以提供帮助。

在恢复的数据库中,我可以看到SSMS中的对称密钥和证书,但是当我尝试使用证书打开密钥(证书CertB的开放对称密钥KeyA解密)时,我得到以下非常具有描述性的错误:

消息15466,级别16,状态1,行1解密期间发生错误。

有任何想法吗?

提前致谢。

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时默认进行此加密,但如果您希望更严格地控​​制对加密数据的访问,则可能会有意删除。无论如何,如果您对DbMK进行了此类SMK加密,则重新生成它的步骤是下列:

通过密码打开主密钥解密='密码'更改主密钥通过服务主密钥关闭主密钥加密

就是这样 - 数据库加密功能现在应该像备份时一样工作。 另请注意,如果您在进行备份的服务器上或其他位置还原数据库,则无关紧要。 唯一重要的是这个程序是你知道一个保护DbMK的密码“

主密钥由源服务器上的服务主密钥解密,我们在目标上使用密码解密主密钥。 我将主密钥更改为由服务主密钥解密,现在它正在工作。

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

该链接对我有用,请按照2个链接进行备份/恢复

您可以使用UNC从目标服务器执行还原,而不必复制该文件。

您可能遇到的问题是服务器的数据库主密钥不同。 根据我的理解,其他密钥基于此,并且在尝试解密数据时可能会导致问题。 查看加密层次结构 ,以获取有关数据加密步骤的说明。

我希望这个答案有所帮助,而且不会太偏离轨道。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM