关于加密关键字
Oracle Base Database Cloud@Customer 使用透明数据加密 (TDE) 对静态数据进行加密,并帮助保护存储在表、表空间和数据库备份中的敏感数据免受未经授权的访问。TDE 使用主加密密钥来保护用于在列或表空间级别加密和解密数据的加密密钥。TDE 主加密密钥存储在密钥库中,以防止未经授权的访问。
Oracle Base Database Cloud@Customer 支持以下密钥管理解决方案,用于存储和管理 TDE 主加密密钥。
-
自动登录 TDE wallet(由 Oracle 管理)
TDE 主加密密钥在自动登录软件密钥库中进行管理。自动登录 wallet 受系统生成的密码保护,并在数据库启动时自动打开。Oracle 管理 TDE 主加密密钥的生命周期。
-
Oracle Key Vault(客户管理)
TDE 主加密密钥在 Oracle Key Vault 中管理。Oracle Key Vault 是一款经过安全保护的设备,可集中管理加密密钥和其他安全对象。Oracle Base Database Cloud@Customer 通过密钥库与 Oracle Key Vault 集成,支持数据库使用客户管理的 TDE 主加密密钥。您可以管理 TDE 主加密密钥的生命周期。
有关详细信息,请参见以下主题:
-
外部密钥库(由客户管理)
TDE 主加密密钥在支持的第三方外部密钥库中进行管理,该密钥库提供 PKCS#11 接口。外部密钥库需要配置相应的供应商软件、凭证和连接,然后才能与 Oracle AI Database 一起使用。您可以管理 TDE 主加密密钥的生命周期。
默认密钥管理
默认情况下,Oracle Base Database Cloud@Customer 将数据库配置为使用 Oracle 管理的 TDE 主加密密钥。您可以将数据库配置为在数据库预配期间使用客户管理的密钥,或者将现有数据库从 Oracle 管理的密钥切换到客户管理的密钥。不支持从客户管理的密钥切换到 Oracle 管理的密钥。
客户管理的密钥需要额外的 Oracle Key Vault 和 IAM 配置。
关键版本
TDE 主加密密钥可以具有一个或多个密钥版本。密钥版本表示同一 TDE 主加密密钥的特定版本。
轮换密钥会生成新的密钥版本,而不会更改密钥本身。将保留以前的密钥版本,以便使用早期版本的密钥加密的数据可以继续解密。
创建容器数据库 (Container Database,CDB) 时,所选 TDE 主加密密钥将同时与容器数据库及其可插入数据库 (Pluggable Databases,PDB) 关联。
如果在创建数据库期间指定密钥版本,则该密钥版本仅用于容器数据库。系统会自动为每个可插入数据库分配一个新的密钥版本。在创建数据库期间,无法为可插入数据库指定密钥版本。
容器数据库及其可插入数据库始终使用相同的 TDE 主加密密钥,但它们可以使用相同或不同的密钥版本。
您可以分配任何可用的密钥版本,包括所选密钥的最新版本。
密钥管理操作
Oracle Base Database Cloud@Customer 支持以下密钥管理操作。
轮换 TDE 主加密密钥
轮换密钥会生成新的密钥版本,而不会更改密钥本身。将保留以前的密钥版本,以便使用早期版本的密钥加密的数据可以继续解密。定期轮换加密密钥可限制使用单个密钥版本加密的数据量,从而帮助满足组织安全性和合规性要求。
容器数据库和可插入数据库独立管理密钥版本。轮换容器数据库的密钥版本不会轮换其可插入数据库的密钥版本。同样,轮换可插入数据库的密钥版本不会影响容器数据库或其他可插入数据库。
分配密钥版本
您可以将不同的密钥版本分配给容器数据库或可插入数据库,而无需更改 TDE 主加密密钥。分配密钥版本只会更改数据库使用的现有密钥版本。
更改密钥管理
您可以将现有数据库从 Oracle 管理的密钥切换为客户管理的密钥。切换到客户管理的密钥时,容器数据库和所有可插入数据库必须打开,并且所有表空间必须处于读/写模式。
与容器数据库关联的 TDE 主加密密钥将自动由其所有可插入数据库使用。尽管容器数据库和可插入数据库始终使用相同的 TDE 主加密密钥,但它们可以使用不同的密钥版本。
不支持从客户管理的密钥切换到 Oracle 管理的密钥。
克隆、远程克隆和重新定位可插入数据库
克隆使用客户管理的 TDE 主加密密钥的数据库时,克隆的数据库最初使用与源数据库相同的密钥版本。
对于远程克隆和重定位操作,源数据库和目标数据库必须使用相同的 TDE 主加密密钥,尽管它们可以使用不同的密钥版本。操作完成后,将为目标 Oracle Key Vault 生成新密钥版本。