本文为您介绍 TDSQL-C MySQL 版的透明数据加密功能。
功能概述
透明数据加密(Transparent Data Encryption,以下简称 TDE)功能,指数据的加解密操作对用户透明。
使用场景
使用 TDE 功能,支持对数据文件进行实时 I/O 加密和解密。在数据写入磁盘前进行加密,从磁盘读取内存时进行解密,可满足静态数据加密的合规性要求。
前提条件
实例版本大于等于 MySQL5.7 2.1.12,或者大于等于 MySQL8.0 3.1.15.005。
实例状态为运行中。
注意事项
使用 TDE 功能需已开启 密钥管理服务 KMS,如未开通,可在开通 TDE 的过程中根据指引开启 KMS 服务。 使用 TDE 功能需已授予 KMS 密钥权限,如未授权,可在开通 TDE 的过程中根据指引进行授权。
操作账号需具有 QcloudAccessForMySQLRole 的权限,如无权限,可在开通 TDE 的过程中根据指引进行授权。
计费说明
加密使用的密钥由 密钥管理服务 KMS 产生和管理,TDSQL-C MySQL 版的数据加密功能不会额外收费,但密钥管理服务 KMS 有可能产生额外费用,详情请参考 计费概述。 使用限制
仅支持对称加密。
操作账号开通 TDE 后若撤销授权关系,实例重启会造成数据库不可用。
TDE 只能开通,无法关闭。即开通 TDE 后,实例上证书密钥无法删除。
KMS 主密钥删除后,用户实例将不可用。
开启 TDE 功能后,如果账号处于欠费状态,则无法从 KMS 获取密钥,可能导致迁移、升级等任务无法正常进行。
操作步骤
开启数据加密
2. 在集群管理页面选择数据安全页。
3. 选择数据加密,单击未开通前面的按钮,打开数据加密功能。
4. 在弹出的对话框中,选择密钥方式后,单击确定。
说明:
如果您在此之前未开启过 KMS 服务,未进行过 KMS 密钥授权,您需要根据对话框中的提示,在 KMS 服务后单击去开启,然后在 KMS 密钥授权后单击去授权,完成对应开启或授权操作以解锁数据加密功能的后续设置。
选择密钥
使用腾讯云自动生成的密钥:由系统自动生成密钥。
使用已有自定义密钥:可选择您自定义创建的密钥。
地域:若使用已有自定义密钥,需要选择已有密钥的所在地域。
密钥:若使用已有自定义密钥,您可通过密钥名称选择已有的密钥,如无已创建的密钥,可单击 前往创建,到密钥管理服务 KMS 控制台进行创建后,再重新选择。 5. 待集群运行状态由“运行中 异步任务:数据加密”变为“运行中”时,即成功开启数据加密,如需了解任务进度,您可前往 任务列表 进行查询。 加密数据表
开启数据加密功能后,用户需对数据库的表执行如下 DDL 操作才能进行数据加密。
如果您要在创建表时对表进行加密,请执行如下命令:
CREATE TABLE t1 (c1 INT) ENCRYPTION='Y';
如果您要对已创建的表进行加密,请执行如下命令:
ALTER TABLE t1 ENCRYPTION='Y';
解密数据表
开启数据加密功能后,如需对已加密的表进行数据解密,请进行如下 DDL 操作。
ALTER TABLE t1 ENCRYPTION='N';
本页内容是否解决了您的问题?