我爱模板

当前位置: 我爱模板网 > 网络编程 > Mysql数据库教程 > 在SQL Server 2008中执行透明数据加密

在SQL Server 2008中执行透明数据加密

问题

安全是任何公司的一个主要考量。数据库备份容易被偷并被恢复到另一个SQL Server实例上。当我们浏览SQL Server 2008的新特性时,我们对一个叫做透明数据加密的特性很感兴趣,我们可以用它来加密我们的数据库备份。你能为我们详细介绍下应该怎样使用这个新功能吗?

专家解答

透明数据加密是SQL Server 2008的一个新特性,它执行数据库级别的加密,补充了目前在SQL Server 2005中使用的记录级别加密。它直接或通过恢复一个数据库备份到另一个SQL Server实例上来保护数据库访问。

在这篇文章里,我们将看看怎样执行透明数据加密来保护数据库备份。让我们首先介绍下怎样的数据库备份是免受威胁的。默认情况下,SQL Server备份是不加密的。让我们先在我的default实例上创建Northwind数据库的一个完全备份。

BACKUP DATABASE Northwind
TO DISK = 'C:\Northwind_unencrypted.bak'
WITH INIT, STATS = 10

让我们在Northwind数据库中查询一条指定记录。我们将在之后使用这条记录来查看我们的数据库备份内容。

SELECT * FROM dbo.Customers
WHERE ContactName = 'Aria Cruz'

在记事本中打开数据库备份并搜索“A r i a C r u z”(注意字母间的空格和“Aria”与“"Cruz”间的三个空格,因为这个是Unicode文本)。可以看到这个文本数据是可读的。  

因为你的本地备份是可读的,所以它们易于受到威胁,因为它们可以以清晰的文本形式读取到。这使得别人只要看看你的数据库备份就可以从这些文件获得数据。更糟的是,任何人都可以将你的数据库备份恢复到另一个SQL Server实例上。我们将简要地介绍这个过程。

推荐继续阅读的文章