Oracle DG环境下的秘钥管理

今天有朋友问到1)DG环境下的秘钥管理需要注意什么,2)秘钥管理对DG的日志同步有影响吗?

对于2)的回答是明确的,没有影响。秘钥的管理和DG的redo log shipping完全是两套机制。在最新版的Oracle Key Vault常见问题提到,Key Vault对于加密的性能没有影响,对于DG就更没有影响了。

对于1),我们先来看一下文档8.2.1 About Using Transparent Data Encryption with Oracle Data Guard是如何说的:

对于软件密钥库(是指秘钥和数据库软件在一起,即Wallet方式 )和外部密钥库(是指秘钥在数据库软件的外部,即Key Vault方式),Oracle Data Guard 支持透明数据加密 (TDE)。

如果主数据库使用 TDE,则 Data Guard 配置中的每个备用数据库都必须拥有主数据库的加密密钥存储的副本。 如果您在主数据库中重置 TDE 主加密密钥,则必须将包含 TDE 主加密密钥的密钥库从主数据库复制到每个 备用数据库。

请注意以下事项:

  • 使用基于钱包的 TDE 重新生成密钥操作将导致备用数据库上的托管恢复进程 (MRP) 失败,因为新的 TDE 主加密密钥尚不可用。 为了避免此问题,请在主数据库上使用 ADMINISTER KEY MANAGEMENT CREATE KEY 语句将新的 TDE 主加密密钥插入钱包。 将钱包复制到备用数据库,然后在主数据库上执行 ADMINISTER KEY MANAGEMENT USE KEY 语句。
  • 当数据传输到备用数据库时,日志文件中的加密数据仍保持加密状态。 加密数据在传输过程中也保持加密状态。

Oracle 12c Oracle Advanced Security 透明数据加密最佳实践中文白皮书中有一节专门提到了DG和Wallet结合的注意事项。不过这里面没有包含Key Vault的内容。

此外,Oracle中国网址提供了Oracle Key Vault的中文介绍,简明扼要,列举了Key Vault的适用场景和主要优点,建议看一下。

总之,在DG环境下,秘钥管理更建议用Key Vault而非Wallet,因为运维更简单,更安全,更高可用,更易扩展。

要知道,加密密钥对于Oracle数据库是至关重要的,秘钥丢了就意味着数据丢了,这可跟家里的保险柜有备用钥匙,可以找原厂开锁不一样。

相关推荐
不想纳尼的青春8 小时前
where = 的作用?会影响性能吗?count(*) 和 count()哪个快?
数据库·oracle
惜分飞17 小时前
Oracle Block Edit Tool (obet) 功能增强–2026.07
数据库·oracle·obet
#六脉神剑1 天前
myBuilder新版本(8月,Office文件预览、Oracle数据库支持)
数据库·oracle·开发平台·数字化工具·mybuilder
空杆推不起2 天前
穿透数据库 JOIN 核心:语法分类、底层算法、生产优化与高频坑点全解析
数据库·oracle
传说故事2 天前
数据库中一些常用英文单词含义
数据库·oracle
dotnet902 天前
批量生成所有表的修改脚本
数据库·sql·oracle
蓝鸟19742 天前
EXISTS子查询SELECT 1与SELECT *到底有无区别?Oracle生产实测解惑(附HIS业务SQL案例)
oracle·his系统·sql优化·数据库调优·exists
一十九的酒2 天前
Oracle Data Guard 备库归档日志满导致同步中断的解决实战
数据库·oracle·oracle-dg 续传·归档空间满
回眸&啤酒鸭3 天前
【回眸】Memmy Agent 智能体落地应用全景指南
数据库·oracle