跳到主要内容
系统常识 SQL ServerTDE加密

透明数据加密 TDE 的原理与适用版本

TDE 的加解密位置(引擎侧透明)、证书/密钥机制、开启后对备份还原的影响,以及哪些引擎版本具备 TDE、开启的代价。

发布于 2026/11/11 所属频道 SQL Server

结论先行

TDE(Transparent Data Encryption)在引擎侧对整个数据库文件透明加解密:应用与 SQL 无感,落盘的 .mdf/.ndf 是密文。它的价值在介质防护(磁盘/备份文件被偷走后读不出明文),不是身份防护(有权限进引擎的人照样看到明文——那是 Always Encrypted 的领域)。TDE 是付费版本的特性,开发/测试用的免费版本不具备(以条目页为准)。

原理分层

  1. 数据库加密密钥(DEK):真正加密数据库数据页,每个库一个,由证书(或非对称密钥)保护。
  2. 证书 / 主密钥:保护 DEK;证书本身可放引擎证书库或 HSM 里保管。
  3. 引擎打开数据库时用证书解开 DEK,在内存中加解密数据页——应用层完全无感,故称「透明」。

开启路径(T-SQL)

USE master;
-- 1. 建立(或存在)主密钥,用于保护证书
CREATE MASTER KEY ENCRYPTION BY PASSWORD = N'强密码';
-- 2. 建证书
CREATE CERTIFICATE SalesTdeCert WITH SUBJECT = N'TDE cert for Sales';
-- 3. 开启数据库加密(DEK 不存在时自动创建,用证书加密保护)
ALTER DATABASE Sales SET ENCRYPTION ON;

图形方式:SSMS 管理工具条目 中 安全性 → 证书(Certificate)/ 数据库加密相关节点操作。

证书/主密钥的保管直接决定「偷磁盘」防护的有效性——证书泄露等于白加密,务必按密钥管理要求存放(独立存储、权限最小化)。

开启后的连带影响(必须知道)

影响 说明
备份还原 还原 TDE 库必须同时还原证书,否则还原后库不可用
性能 加解密走引擎,整体有 IOPS/CPU 开销,大库有感
跨版本 加密属性随备份走,还原到高版本引擎需证书跟随
迁移 分离/附加、镜像等高级特性受 TDE 状态约束

TDE 开启是不可轻易关闭的动作:关闭前必须有备份兜底,且关闭过程会重加密/解密全部文件,耗时。

版本归属

TDE 的能力归属付费版本;免费版本(如 SQL Server 2025 Developer 这类开发用途条目)不开放 TDE(以各条目页特性说明为准)。若你的场景是免费版本,介质防护只能靠「文件权限 + 备份加密」组合近似达成。与 Always Encrypted 的分工另见「Always Encrypted」相关条目,SQL Server 产品族条目 中各版本特性以条目页为准。

相关链接

本文内容基于公开资料整理,仅供参考;涉及授权与合规的操作请以厂商官方文档为准。

相关推荐下载

按本文主题匹配的官方原版镜像条目

配套 PE 工具

制作启动盘、备份数据、修复引导

其他常识文章

同一集合内的相近主题,按标签与关键词匹配