TDE 透明加密

本页面为您介绍 TDE(Transparent Data Encryption) 透明加密的操作步骤。TDE 透明加密功能开启之后将无法关闭,请谨慎操作。

背景信息

云数据库 OceanBase 支持 TDE(Transparent Data Encryption)透明加密,可对存储和 RPC 进行加密。

  • 存储的加密,即磁盘的加密。

  • RPC 的加密,主要是 OBServer 之间的通信的加密。

说明

OceanBase 数据库 V2.2.77 及以上版本支持 TDE 加密功能。

TDE 透明加密功能当前支持服务密钥和自定义密钥两种方式。

服务密钥

由 OceanBase 云数据库生成和管理的密钥。

自定义密钥

采用阿里云 KMS 服务创建的密钥,当您购买了阿里云 KMS 服务时,可到 KMS 管理控制台创建您的自定义密钥,具体操作参见 创建密钥

使用限制

  • 服务密钥使用限制

    • TDE 加密功能开启后将不能关闭。

    • Oracle 租户支持的密钥类型为 AES-256,AES-128,AES-192,M4-CBC,密钥类型设置后不能修改,不能做类型转换。

  • 自定义密钥使用限制

    • TDE 加密功能开启后将不能关闭。

    • Oracle租户支持的密钥类型为 AES-256,AES-128,AES-192,M4-CBC,密钥类型设置后不能修改,不能做类型转换。

    • 自定义密钥目前仅支持 OceanBase 数据库 V2.2.77 版本。

    • 云产品将触发创建服务角色 AliyunServiceRoleForOceanBase(如已创建,不会重复创建),便于您加密 OceanBase 云服务数据。请确保您使用的账号为主账号,或者具有 AliyunSTSAssumeRoleAccess 权限的账号。

    • 请勿在 KMS 平台进行禁用密钥、设置密钥计划删除或者删除密钥的操作,此类操作将导致 TDE 加密功能无法正常开启。

    • 当您在 KMS 管理平台创建完密钥后,需要给密钥添加 oceanbase:encryption: true 标签。

操作步骤

  1. 在左侧导航栏单击 集群列表,选择目标集群,进入 集群工作台 页面。

  2. 在左侧导航栏单击 安全设置

  3. 在 TDE 透明加密 页签中,可查看 TDE 设置列表。1

    1. 单击 操作 列下的 开启加密,开启 TDE 加密功能。

      说明

      TDE 透明加密功能开启之后将无法关闭,并且对性能有一定的影响,请谨慎操作。

    2. 在弹出框中单击 确定,设置密钥类型。

      密钥类型分为服务密钥和自定义密钥:

      • 服务密钥:由 OceanBase 云数据库生成和管理的密钥。

        说明

        目前支持的密钥类型为 Aliyun_AES_256,Aliyun_SM4,密钥类型设置后不能修改,不能做类型转换。

      • 自定义秘密:采用阿里云 KMS 服务创建的密钥,当您购买了阿里云 KMS 服务时,可到 KMS 管理控制台创建您的自定义密钥,具体操作参见 创建密钥

        说明

        1. 目前支持的密钥类型为 Aliyun_AES_256,Aliyun_SM4,密钥类型设置后不能修改,不能做类型转换。

        2. 云产品将触发创建服务角色 AliyunServiceRoleForOceanBase(如已创建,不会重复创建),便于您加密 OceanBase 云服务数据。

    3. 选择您的密钥类型后,单击 确定,完成 TDE 加密功能的开启。

后续操作

当您完成 TDE 透明加密的功能开启之后,可通过数据研发功能或其它黑屏工具,创建加密表空间并进行 DDL 操作:

  • Oracle 租户

    create tablespace tablespace_name ENCRYPTION USING 'AES-256|AES-128|AES-192|SM4-CBC';
    create table table_name (column1 int, column2 int) tablespace tablespace_name;
  • MySQL 租户

    create tablespace tablespace_name encryption = 'y';
    create table table_name (column1 int, column2 int) tablespace tablespace_name;

您也可以单击 操作 列下的 创建表空间 来创建加密表空间。

单击某个租户前面的“+”号,可以查看该租户下所有的加密表空间信息,包括加密表空间名、加密算法和创建时间。

TDE透明加密3

单击加密表空间名,可以查看加密表的状态、加密进度等信息。加密进度表示当前数据表中,已完成加密的数据块百分比。

TDE透明加密2

说明

  1. 开启 TDE 之后,在当前页面创建加密表空间,再进行创建加密表的 DDL 操作才能进行数据加密。创建加密表 DDL:CREATE TABLE t1 (id int,id2 int) TABLESPACE sectest_ts1;

  2. 若有历史数据表加入表加密空间,加入后请进行一次全量合并,实现数据的持久化。

阿里云首页 云数据库 OceanBase 相关技术圈