Navicat使用教程:SQL Server中的磁盘加密

本文主要介绍如何激活SQL Server中的磁盘加密。

Navicat Premium是一个可连接多种数据库的管理工具,它可以让你以单一程序同时连接到MySQL、Oracle及PostgreSQL数据库,让管理不同类型的数据库更加的方便。

【下载Navicat Premium最新版本】

在现在的信息时代,加密敏感数据是十分有意义的。其实问题也不在于加密,而在于采用哪种方法来加密。以下是三种主要广泛使用的数据库加密方法:

  1. 应用程序编程接口(API) – 应用程序级别
  2. 插件 – 数据库级别
  3. 透明数据加密 – 磁盘/操作系统级别

我们越想了解一个应用程序,就需要更改更多的源代码。相反,我们越想了解一个操作系统,开发人员可以付出更少的努力。磁盘加密是最安全的,因为即使访问物理数据库服务器,黑客也无法读取数据。

Microsoft的透明数据加密(TDE)在SQL Server 2008,Azure SQL数据库和Azure SQL数据仓库数据文件中实现,通过在数据写入磁盘时加密数据库来实现此目的。同样,从磁盘读取时,数据未加密。所以,只有在内存中时,数据才处于未加密状态。

默认情况下,SQL Server根本不加密数据,更不用说加密磁盘了。激活磁盘加密需要几个步骤。在本篇文章中,我们将回顾如何在SQL Server中打开TDS。

1.创建主密钥

USE master;GOCREATE MASTER KEY ENCRYPTION    BY PASSWORD='Use a Strong Password For the Database Master Key'GO

2.创建或获取受主密钥保护的证书

USE master;GOCREATE CERTIFICATE My_TDE_Certificate       WITH SUBJECT='Certificate for TDE';GO

3.创建数据库加密密钥并通过证书进行保护

USE MyDatabaseGOCREATE DATABASE ENCRYPTION KEYWITH ALGORITHM = AES_256ENCRYPTION BY SERVER CERTIFICATE TDE_Certificate;

4.将数据库设置为使用加密

ALTER DATABASE MyDatabase SET ENCRYPTION ON;GO

备份证书

虽然使用TDE加密数据库不需要此步骤,但是如果主数据库损坏,则可以从数据库备份中恢复加密数据,这一点非常重要。如果要将加密数据库移动到另一台服务器,还应备份证书。这是完成备份的代码:

USE master;GOBACKUP CERTIFICATE TDE_CERT_For_MyDataTO FILE = 'C:tempTDE_Cert_For_MyData.cer'WITH PRIVATE KEY (file='C:tempTDE_CertKey.pvk',ENCRYPTION BY PASSWORD='Use a Strong Password for Backup Here');

确保将备份密码存储在安全的地方。如果必须重建承载加密数据库的服务器实例或需要将数据库移动到另一台服务器,则需要此密码才能还原证书。

数据库备份

使用TDE加密数据库的好处之一是数据库备份也将被加密,从而增强数据安全性。从SQL Server 2016开始,你还可以对启用TDE的数据库备份应用压缩。压缩数据库备份非常重要,因为它可以通过生成小于数据库的备份文件来节省磁盘空间。此外,它还缩短了恢复数据库所需的时间。

以下是如何将压缩应用于启用TDE的数据库备份:

BACKUP DATABASE [MyDatabase]TO DISK = N'E:backupMyDatabase_TDE_Compressed.bak'WITH NOFORMAT, NOINIT, NAME = N'MyDatabase_TDE-Full Database Backup',SKIP, NOREWIND, NOUNLOAD, COMPRESSION, STATS = 10O

购买Navicat Premium正版授权,请点击“咨询在线客服”哟!

标签:数据库mysqloracle

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月19日
下一篇 2019年1月19日

相关推荐

发表回复

登录后才能评论