SQL服务器备份加密的基础

詹姆斯
2019年5月3日

大多数公司都会同意他们的数据是其业务中最重要的组成部分之一。

从客户信息到内部应用程序记录, 保护业务数据至关重要。

设置备份

当然,这是保护数据的第一步。文件系统备份或VM快照中包含的备份可能保留的时间更长,如果您需要比过去几天恢复更多的备份,这尤其有用。备份还可以复制到云存储或异地存储,这非常重要,因为即使在站点发生灾难的情况下,它们也可以还原数据。

这些都是积极的措施,但是却有风险:您可能最终会在各个位置拥有宝贵数据的备份副本。问题是,尽管数据库服务器可能受到保护,但您不可能完全控制那些有权访问VM快照或云存储的用户。异地运输时驱动器可能会丢失吗?如果发生这种情况,掌握您的备份的任何人都可以还原它们,以在无需您同意甚至不知情的情况下访问您的业务数据。

那是备份加密不可估量的地方。即使备份文件被盗,数据库备份加密也可以防止未经授权访问业务数据。有许多可靠的第三方工具可以执行备份加密,但是由于 SQL服务器 2014本机备份加密 企业版和标准版均提供了该功能-因此,无需使用第三方工具的其他许可证即可对数据库备份进行加密。

有趣的是,尽管在过去的三个版本的SQL Server中都可以使用备份加密,但我们认为它并不是一个广泛使用的功能。问题可能在于它看起来很复杂,但不一定如此。

三个简单步骤

通过执行以下3个简单步骤,您将能够配置备份加密。我们建议您在测试实例中进行测试,并考虑将备份加密作为默认元素包含在备份策略中

1.创建一个主密钥
2.创建一个证书(并备份该证书)
3.使用加密执行数据库备份

有许多文章更详细地探讨了这些备份加密步骤,但是本节的目的是尽可能简明地提供必要的命令。

请首先在测试环境中进行测试,使用比这些示例更强的密码(并将它们存储在密码库中),并且有必要修改文件路径。本示例仅考虑SQL Server的独立实例。

配置SQL Server备份加密

1.创建一个主密钥

使用主
CREATE MASTER KEY密码加密=‘masterkeypassword’;

建议在创建主密钥后立即对其进行备份。这是通过使用以下T-SQL完成的:

备份主密钥到文件=‘C:\temp\mk2.bak’密码加密=‘masterkeybackuppassword’;

2.创建证书

CREATE CERTIFICATE backup_certificate
WITH SUBJECT =‘备份加密证书’;

重要提示:备份此证书至关重要。可以使用以下T-SQL备份证书:

BACKUP CERTIFICATE backup_certificate
到文件=‘C:\ temp \ backupcertificate.cer’
带私钥(文件=‘C:\ temp \ backupcertificatepk.pvk’,由密码加密=‘privatekeypassword’);

这将创建两个文件,证书备份和私钥(私钥正在加密您的证书备份文件)。

重要:
•这两个文件与数据库备份文件一样重要。如果没有这两个文件,您将无法将加密的数据库备份还原到新实例(包括当前实例需要重建的场景)。
•确保证书备份文件和私钥存储在与数据库备份文件不同的位置,即,在另一台服务器上或在单独的存储区域和异地。
•最佳做法是续订证书。默认情况下,证书将在一年后过期。仍然可以使用过期的证书来还原加密的数据库备份,但是由于证书过期,新的数据库备份将报告失败。要解决此错误,只需创建一个新证书并在下一步中修改证书名称即可。

3.使用加密执行备份(以“ test_encryption”测试数据库为例)

备份数据库[test_encryption]
到磁盘= N’C:\ temp \ test_encryption.bak’
带有格式,初始化,跳过,加密(算法= AES_256,服务器证书= [backup_certificate]);

就是这样,我们现在已经成功创建了加密的数据库备份。

将加密的备份还原到另一个实例

如果我们尝试将此加密的数据库备份还原到新实例(即,该实例不具有用于加密备份的证书),则会收到类似于以下错误:

RESTORE DATABASE [test_encryption]
从磁盘= N’C:\ temp \ test_encryption.bak’
有恢复;

Msg 33111,第16级,状态3,第20行
找不到带有指纹“ 0x9D8F11B623D5C7B94E64D1889ECCAD61C52A025D”的服务器证书。

Msg 3013,第16级,状态1,第20行
RESTORE DATABASE异常终止

要解决此错误,我们需要使用我们的证书备份文件和私钥来还原证书:

CREATE CERTIFICATE backup_certificate
来自文件=‘C:\ temp \ backupcertificate.cer’
带私钥(文件=‘C:\ temp \ backupcertificatepk.pvk’,密码解密=‘privatekeypassword’);

(如果新实例没有主密钥,请在上面的“创建主密钥”步骤中运行命令。)

现在我们可以成功还原加密的数据库备份:

RESTORE DATABASE [test_encryption]
从磁盘= N’C:\ temp \ test_encryption.bak’
更换,恢复;

希望本文已表明启用备份加密是一个简单的过程,并强调了需要注意的关键因素。

祝您加密备份好运,如果您需要帮助,请致电我们0800 389 4051,我们’会在途中为您提供帮助。

 

詹姆斯·牛顿·布雷迪
詹姆斯·牛顿·布雷迪

井数据’s consultant database administrator, James, works closely with clients 和 the rest of the 井数据 team. A certified Microsoft technical specialist, he continually strives to provide the best customer service 和 technical advice in a friendly 和 approachable manner.

分享

<< Back to resources

加入我们的时事通讯

联系电子邮件  *
名字 
姓 
*必填项
我同意  隐私政策 and  使用条款 

这是别人的想法

Google评分
5.0
井数据 provide an excellent level of support 和 their team are very knowledgeable 和 always go the extra mile. I 会全力推荐他们。阅读更多
斯蒂芬·帕罗特
斯蒂芬·帕罗特
17:12 19年9月19日
在Welldata团队工作了将近17年之后,我和我的公司一直都非常专业, 可靠,通常是一个很好的公司。阅读更多
约翰·莱恩斯
约翰·莱恩斯
14:00 04十月17
Our partnership with 井数据 has enabled us to resolve critical database problems. Their attitude 和 service makes 他们自然扩展了我们自己的技术团队,从而扩展了我们在业务关键领域的能力。阅读更多
史蒂夫·芬顿
史蒂夫·芬顿
11月18日10:56
真正了解他们的东西和他们的响应时间非常好。
安迪·科尔
安迪·科尔
11月45日11:45
我们将Welldata用于SQL支持,并对他们的服务感到非常满意。
大卫·萨德勒
大卫·萨德勒
2018年11月15日9:40
一个非常专业且知识渊博的专家组成的非常敬业的团队
I have worked with the 井数据 team for many years now 和 they have always delivered. I would highly recommend 他们适合任何寻求最佳价值的外包专家DBA的企业。能够提供滚动合同的基础是,如果他们没有交付,您可以离开,这表明了他们的信心和承诺。他们的专业和知识是首屈一指的。阅读更多