当前位置: 首页 > article >正文

各知名云平台对于 MySQL TDE的支持汇总和对比

MySQL Community TDE功能介绍:

TDE: Transparent Data Encryption, 也就是透明传输加密。在MySQL community官网上有这样原文介绍:With MySQL version 5.7.12 and up, Oracle continues to improve MySQL’s security features by adding MySQL Enterprise Transparent Data Encryption (TDE) for InnoDB tables stored in innodb_file_per_table tablespaces.

因此,对于TDE功能,其实社区版MySQL5.7是不支持的,只有Enterprise版本才支持。

而后到了MySQL 8.0版本,社区版也支持TDE插件了: All MySQL editions provide a component_keyring_file component and keyring_file plugin, each of which stores keyring data in a file local to the server host.【1】

那么,对于各大云厂商,对这个MySQL TDE的支持都如何呢?

1. AWS:

根据参考文档【2】【3】【4】,很遗憾的是,只有RDS Oracle和 RDS SQL Server支持TDE。 AWS RDS MySQL是不支持TDE的。RDS MySQL仅支持存储层面启用KMS Key进行 data at rest的加密,也就是RDS实例底层EBS卷的加密。

 RDS Oracle 和 RDS SQL Server 都是通过选项组的方式来启用透明传输加密的。

2. Azure SQL:

Azure SQL很有意思,它是支持MySQL TDE的。而且Azure云上SQL TDE功能的实现,跟社区版MySQL不同,不同在如下方式:

官方文档【5】中写到:“在 Azure SQL 数据库客户启用 TDE 后,系统会自动为其创建和管理密钥。 可以在数据库和服务器级别启用静态加密。 从 2017 年 6 月开始,会在新创建的数据库上默认启用透明数据加密 (TDE)。” 

后续可以通过alter database,在database级别启用TDE:

ALTER DATABASE(Azure SQL 数据库)SET ENCRYPTION ON/OFF 会加密或解密数据库
3. 阿里云:

阿里云官方文档【6】中有如下说明:

"RDS提供MySQL、PostgreSQL和SQL Server的透明数据加密(Transparent Data Encryption,简称TDE)功能。 MySQL和PostgreSQL版的TDE由阿里云自研,SQL Server版的TDE是基于SQL Server企业版的功能改造而来。 当RDS实例开启TDE功能后,您可以指定参与加密的数据库或者表。"

而启用 RDS MySQL的 TDE功能以后,后续创建的table,需要手动启用加密:

create table xxx ENCRYPTION='Y';

只有在Table级别启用TDE,没有在database级别控制的

MySQL community有个参数来控制:

default_table_encryption system variable defines the default encryption setting for schemas and general tablespaces. 

但是这个参数在阿里云中没有暴露,也就是不允许RDS MySQL来进行更改。(截至2025年1月3日)

后续不知道是否会有database级别自动启用TDE的改进,大家感兴趣的可以多关注一下官网和官方文档。

参考文档:

【1】MySQL :: MySQL 8.0 Reference Manual :: 17.13 InnoDB Data-at-Rest Encryption

【2】https://docs.amazonaws.cn/AmazonRDS/latest/UserGuide/Appendix.SQLServer.Options.TDE.html

【3】Oracle 透明数据加密 - Amazon Relational Database Service

【4】加密 Amazon RDS 资源 - Amazon Relational Database Service

【5】https://learn.microsoft.com/zh-cn/azure/security/fundamentals/encryption-atrest

【6】RDS提供的数据加密功能_云数据库 RDS(RDS)-阿里云帮助中心


http://www.kler.cn/a/471929.html

相关文章:

  • Java-编写的一个生产者-消费者模式
  • 微服务组件——利用SpringCloudGateway网关实现统一拦截服务请求,避免绕过网关请求服务
  • MATLAB对文件处理
  • HTML 迷宫游戏
  • PDFMathTranslate: Star13.8k,一款基于AI的PDF文档全文双语翻译PDF文档全文双语翻译,保留格式神器,你应该需要它
  • 代码随想录day38 动态规划6
  • vue中 输入框输入回车后触发搜索(搜索按钮触发页面刷新问题)
  • 【Nginx】Nginx 最新社区稳定版-1.26.2-发布
  • Mysql之炸裂函数(难点★★★★★)
  • 中国税务年鉴PDF电子版Excel2022年-社科数据
  • 05容器篇(D2_集合 - D5_企业容器常用 API)
  • 【Rust自学】10.7. 生命周期 Pt.3:输入输出生命周期与3规则
  • java ShaUtils sha1如何生成签名?
  • uniapp下的手势事件
  • Vue 3 详解
  • 锂电池剩余寿命预测 | 基于BiLSTM-Attention的锂电池剩余寿命预测,附锂电池最新文章汇集
  • 2、zookeeper和kafka
  • List ---- 模拟实现LIST功能的发现
  • 23.行号没有了怎么办 滚动条没有了怎么办 C#例子
  • IP Anycast 与 CDN
  • c/c++ 里的进程间通信 , 管道 pipe 编程举例
  • 接口项目架构流程图-thinkphp6-rabbitmq
  • QT学习十九天 QT核心机制
  • WebRtc02: WebRtc架构、目录结构、运行机制
  • Lianwei 安全周报|2024.1.7
  • 【Java】JVM内存相关笔记