gpt4 book ai didi

sql-server-2005 - 如何在 SQL Server 2005 数据库之间传输 sql 加密数据?

转载 作者:行者123 更新时间:2023-12-04 07:07:02 27 4
gpt4 key购买 nike

我有一个现有的 SQL Server 2005 数据库,其中包含使用对称 key 加密的数据。对称 key 是使用密码打开的。我正在对使用此数据库的前端应用程序进行升级,其中包括添加数十个新表、存储过程、UDF 等,并对现有表和数据库对象进行数十项修改。为此,我制作了现有开发数据库的副本,以便在进行新开发时可以独立支持、维护和更新当前系统。

复制数据库的好方法是什么?通常,我会备份现有数据库,然后将其恢复到新数据库。但是,考虑到加密数据,这是否可行?我是否仍然能够使用现有的对称 key 和密码对新数据库中的数据进行加密,更重要的是解密数据?

我可能只想使用 DTS 来传输现有架构。在新数据库中创建一个新的对称 key /密码。然后编写临时查询来传输数据,使用现有 key /密码进行解密,并使用新数据库中的新 key /密码进行加密。

我想这的核心是,对称 key 是否适合在单个数据库或同一服务器上的多个数据库中加密/解密数据?

最佳答案

您所指的对称 key 是数据库主 key (DMK)。它们保存在数据库级别,因此备份/恢复到另一个 SQL 服务器应该可以正常工作(需要注意不同的服务帐户,这 thread 暗示了这一点)

在您做任何事情之前,请确保您备份了您的 key (大概您已经这样做了):

USE myDB
GO
BACKUP MASTER KEY TO FILE = 'path_to_file'
ENCRYPTION BY PASSWORD = 'password'
GO

从这里 article :

When you create a Database Master Key, a copy is encrypted with the supplied password and stored in the current database. A copy is also encrypted with the Service Master Key and stored in the master database. The copy of the DMK allows the server to automatically decrypt the DMK, a feature known as "automatic key management." Without automatic key management, you must use the OPEN MASTER KEY statement and supply a password every time you wish to encrypt and/or decrypt data using certificates and keys that rely on the DMK for security. With automatic key management, the OPEN MASTER KEY statement and password are not required.

关于sql-server-2005 - 如何在 SQL Server 2005 数据库之间传输 sql 加密数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/149876/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com