WEB开发网
开发学院数据库MSSQL Server 在SQL Server 2008中执行透明数据加密 阅读

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

 2008-09-27 10:05:31 来源:WEB开发网   
核心提示: 因为你的本地备份是可读的,所以它们易于受到威胁,在SQL Server 2008中执行透明数据加密(2),因为它们可以以清晰的文本形式读取到,这使得别人只要看看你的数据库备份就可以从这些文件获得数据,如果你打开这个加密数据库备份并搜索我们之前搜索的字符串“A r i a C r

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

现在我们在我们的Northwind数据库上执行透明数据加密,首先在服务器上建立加密。为了做到这一点,我们在主数据库上创建数据库主钥。

  USEmaster
  GO
  CREATEMASTERKEYENCRYPTIONBYPASSWORD='mY_P@$$w0rd'

然后,我们创建基于服务器的证书,它将用于加密这个数据库。

  CREATECERTIFICATENorthwindCert
  WITHSUBJECT='MyDEKCertificateforNorthwinddatabase'

然后我们将为Northwind数据库设置解密,通过使用我们刚刚创建的证书创建一个数据库加密密钥和密码。

  USENorthwind
  GO
  CREATEDATABASEENCRYPTIONKEY
  WITHALGORITHM=AES_128
  ENCRYPTIONBYSERVERCERTIFICATENorthwindCert
  GO

因为有一些不同的选择,所以加密算法选择是你自己的。在创建数据库加密密钥之后,我们将激活数据库级别的加密。

  ALTERDATABASENorthwind
  SETENCRYPTIONON

让我们备份这个加密的Northwind数据库,但是这次使用一个不同的文件名。

  BACKUPDATABASENorthwind
  TODISK='C:Northwind_encrypted.bak'
  WITHINIT,STATS=10

加密备份花费的时间将比未加密的备份稍长一些。如果你打开这个加密数据库备份并搜索我们之前搜索的字符串“A r i a C r u z”,你将搜索不到它。你可以滚动这个文本并注意到这个加密的数据与你在未加密备份中看到的不一样。

Tags:SQL Server 执行

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接