Oracle Database 12c DBV安全机制深度解析
1. DBV基础概念
1.1 命令规则与安全访问控制
DBV(Database Vault)命令规则是一种新的安全层,可基于自定义规则对数据库语句进行授权。与安全应用角色(SARs)不同,命令规则可应用于任何SQL语句。在执行命令时,决策基于所需权限的存在以及是否通过命令规则。例如,若用户执行某命令,需先拥有执行该命令的权限,然后命令规则会进行额外的安全检查。
1.2 DBV安全应用角色(SARs)
Oracle提供的SARs可在PL/SQL程序中启用。DBV集成的SARs允许使用DBV规则集定义适用条件,从而根据组织的业务或应用规则控制敏感权限集的启用。例如,在特定业务条件满足时,才允许启用某个具有敏感权限的角色。
2. DBV的配置与启用
2.1 前期准备
在Oracle Database 12c中,DBV默认安装方式与OLS(Oracle Label Security)相同。在配置和启用DBV之前,必须先在数据库中启用OLS。
2.2 配置方式
可通过运行PL/SQL API程序或使用Oracle数据库配置(DBCA)工具来配置DBV。以下是使用DBCA创建新多租户数据库并配置DBV的示例:
-- 使用DBCA高级模式创建新多租户数据库DB12CR,包含一个名为SALES的可插拔数据库(PDB)
-- 在数据库选项参数屏幕下为根容器配置DBV
-- 验证DBCA是否在根容器中启用了DBV
sys@d