You need to enable JavaScript to run this app.
文档中心
云数据库 PostgreSQL 版

云数据库 PostgreSQL 版

复制全文
下载 pdf
数据安全
关于 TDE 数据加密
复制全文
下载 pdf
关于 TDE 数据加密
本文介绍关于 TDE 数据加密的详细内容。​
什么是透明数据加密 TDE​
透明数据加密 TDE (Transparent Data Encryption)功能可以对数据文件执行实时 I/O 加密和解密。数据在写入磁盘时进行加密,从磁盘读取时自动解密。该功能在数据库层执行静态数据加密,可以阻止攻击者绕过数据库直接从存储空间中读取敏感信息,且用户无需修改任何应用程序,即可使用 TDE 功能。​
透明数据加密的原理​
名词介绍:​
  • 用户主密钥 (Customer Master Key,简称 CMK):可使用用户主密钥 CMK 保护数据密钥 DEK。​
  • 数据密钥(Data Encryption Key,简称 DEK):由数据库生成,用于加密或解密磁盘数据。​
加密解密流程:​
PostgreSQL 实例的所有加密、解密操作均在内存中进行。​
  • 加密操作:业务的数据以明文形式写入内存,在内存中经过数据密钥 DEK 加密后,将密文数据存储在磁盘中。​
  • 解密操作:业务读取数据时,系统会先从 KMS 服务中获取用户主密钥 CMK,并以此解密数据密钥 DEK,然后使用解密后的数据库密钥 DEK 解密磁盘密文数据,将数据以明文形式返回到内存,供业务访问。​
准备工作​
您在使用 TDE 加密功能前,需完成以下准备工作:​
  • TDE 加密功能目前在邀测中。您需要提交工单申请试用资格。​
说明​
此处创建的密钥,密钥类型仅支持选择 SYMMETRIC_128 和 SYMMETRIC_256,密钥用途仅支持选择 ENCRYPT_DECRYPT。​
  • 开启 TDE 加密功能时需确保使用的账号具有 STSAssumeRoleAccess 和 iam:CreateServiceLinkedRole 权限。具体操作,请参见管理用户。​
费用说明​
TDE 加密功能免费,使用密钥管理服务(KMS)并创建密钥,会产生 KMS 服务费用。计费说明,请参见密钥管理计费说明。​
注意事项​
  • 禁用、删除 KMS 的自定义密钥或修改其名称,将导致使用该密钥的 PostgreSQL 实例无法正常工作。​
  • TDE 加密功能仅支持新建实例时在创建页面开启,存量实例不支持开启,且实例创建后无法手动开启或关闭该功能。​
  • 新建 PostgreSQL 实例启用 TDE 加密还需满足以下条件:​
  • 兼容版本为 PostgreSQL 17 版本。​
  • 存储类型为本地 SSD 盘。​
  • 实例的地域需为 TDE 加密功能支持的地域。​
  • 开启 TDE 加密功能的 PostgreSQL 实例,不支持升级数据库大版本。​
  • 开启了 TDE 加密功能的实例不能作为 MPP 集群的 Coordinator 实例或 Worker 实例。​
  • 如果 PostgreSQL 实例存在只读节点,在开启 TDE 加密功能后,只读节点将继承主节点的密钥。​
  • TDE 加密功能仅支持加密磁盘数据,WAL 日志不支持加密。​
  • 实例在开启 TDE 加密功能后,通过备份恢复至新实例时,新实例也将默认开启 TDE 加密,并继承原实例的密钥配置。​
  • 实例在开启 TDE 加密功能后,不支持逻辑复制,因此该实例不能作为 DTS 数据迁移或同步任务的源端。​
  • 开启 TDE 加密后,DBW 审计日志中记录的扫描行数可能不准确。​
  • 开启 TDE 加密功能后,默认对所有表数据进行加密。若您无需对指定数据表加密,可在建表时添加 USING heap 参数。例如:​
​
CREATE TABLE not_tde_table(...) USING heap;​
​
  • 撤销授权关系后,重启 PostgreSQL 实例会导致 PostgreSQL 实例不可用。​
  • TDE 加密功能仅在以下地域提供:​
​
地域名称​
地域 ID​
华北 2(北京)​
cn-beijing​
华东 2(上海)​
cn-shanghai​
中国香港​
cn-hongkong​
亚太东南(柔佛)​
ap-southeast-1​
亚太东南(雅加达)​
ap-southeast-3​
华北 2(北京)自动驾驶云 2​
cn-beijing-autodriving​
华东 2(上海)自动驾驶云 1​
cn-shanghai-autodriving​
​
后续步骤​
若您需要使用 TDE 加密功能,请在提交工单获取试用资格后,新建 PostgreSQL 实例并开启 TDE 加密。具体操作,请参见创建实例。​
最近更新时间:2026.09.16 16:35:59
这个页面对您有帮助吗?
有用
有用
无用
无用