SQL Server ->> 透明数据加密(TDE)

发布时间:2022-06-06 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了SQL Server ->> 透明数据加密(TDE)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

透明数据加密(TDE)加密 SQL Server的数据和日志文件,而且是页面级别的加密,数据库页在写入磁盘之前会进行加密,在读入内存时会进行解密。 TDE 不会增加已加密数据库的大小。

TDE 对数据和日志文件进行实时 I/O 加密和解密。 加密使用的是数据库加密密钥 (DEK)。 数据库启动记录存储该密钥,供还原时使用。 DEK 是一种对称密钥。 它由服务器的 master 数据库存储的证书或 EKM 模块所保护的非对称密钥提供保护。

启用了透明数据加密(TDE),数据库的还原和附加都需要用到证书和私钥。即便禁用了 TDE,事务日志的某些部分可能还是加密状态,在执行下一次执行完整数据库备份之前,可能还需要用到证书。

 

下图是MSDN上解释TDE的加密层次结构

 

SQL Server ->> 透明数据加密(TDE)

 

 

 

 启用TDE的步骤

  1. 创建主密钥。

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

  3. 创建数据库加密密钥并使用此证书保护该密钥。

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

USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<UsestrongPasswordHere>';
go
CREATE CERTIFICATE MyServerCert WITH SubJECT = 'My DEK Certificate';
go
USE AdventureWorks2012;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
GO
ALTER DATABASE AdventureWorks2012
SET ENCRYPTION ON;
GO

 

参考:

透明数据加密 (TDE)

CREATE DATABASE ENCRYPTION KEY (Transact-sQL)

ALTER DATABASE SET 选项 (Transact-SQL)

Sys.dm_database_encryption_keys (Transact-SQL)

sys.certificates (Transact-SQL)

脚本宝典总结

以上是脚本宝典为你收集整理的SQL Server ->> 透明数据加密(TDE)全部内容,希望文章能够帮你解决SQL Server ->> 透明数据加密(TDE)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。