返回数据库安全性主页

虚拟专用数据库

虚拟专用数据库 (VPD) 是 Oracle Database 11g 企业版的一个特性,它在 Oracle8i 中引入,是数据库中最流行的安全特性之一。如果标准对象权限和关联的数据库角色无法满足应用程序的安全要求,则需要使用 VPD。VPD 策略可能很简单,也可能很复杂,这取决于您的安全要求。VPD 可以与“应用程序上下文”特性结合使用,以便针对隐私和合规性实施复杂的行和/或列级安全要求。在工作时间内限制对数据的访问是一个简单的 VPD 示例,在登录触发器时初始化应用程序上下文、并针对 ORDERS 表实施行级安全性是一个较为复杂的 VPD 示例。

无论用户通过何种方式连接到受保护的表(通过应用程序、Web 界面还是 SQL*Plus),结果都是一样的。不会再出现“应用程序安全问题”,因为访问策略已经附加到该表,无法忽视。

简单 VPD
示例:如果用户位于“customers”表(上表)中,则只能看到他在“orders”表(下表)中的顺序


通过“列相关性”,可以配置 VPD,以便在选择关键列时实施策略:

VPD 列相关性(从属性)

VPD 列相关性(主属性)
示例:account_mgr_id 为“149”的帐户管理员可以看到 customers 表的所有行,但无法看到信用额度。如果她查询“credit_limit”列,只能看到她自己的客户。


VPD 的最高级配置(“列隐藏”)可以最有效地结合易用性和安全性:她仍然可以访问“customers”表的所有公开信息,但机密信息仍保持隐藏状态。

VPD 列屏蔽
示例:除了她自己的客户以外,所有其他“credit_limit”数据单元格均为空。



上机操作


针对应用程序用户的 VPD 策略组(包括“驱动应用程序上下文”)
结合利用 Oracle 数据库安全性和 J2EE 容器管理的持久性 (pdf)
结合使用 VPD 和 Oracle Label Security 基于 OLS 用户许可来隐藏敏感列

安全特性


数据加密
虚拟专用数据库
数据库审计
备份加密
导出文件加密
代理身份验证
企业用户安全性
安全应用程序角色
细粒度审计

论坛


安全性
Audit Vault

客户成功案例


行业领先的组织在全球范围内依赖 Oracle 数据库安全性解决方案保护数据隐私、应对内部威胁并满足合规性 — 无需更改现有应用程序,可节约时间和金钱。
数据库安全性客户

安全选件


Oracle Database Vault
Oracle Advanced Security
Oracle Label Security

相关技术


Database Firewall
Audit Vault
Data Masking (pdf)
Secure Backup
Oracle Database Lifecycle Management Pack
Identity Management