VPD安全策略¶
VPD(Virtual Private Database)安全策略,是 ORACLE 提供的一种基于动态谓词的行级管理控制,
神通也实现了该机制的基本用法,特别说明的是,VPD 策略与神通安全版本中的策略管理工具中的策略,两者不同的。
在数据库的数据安全访问的解决上,有很多的方法来解决权限的问题,常用的方法例如建立视图的方法控制,例如查询语句中加 WHERE 语句来控制。
用view的方法在表结构或者权限变更的时候很不容易操作,编码工作量大、系统适应用户管理体系的弹性空间较小,一旦权限逻辑发生变动,
就可能需要修改权限体系,导致所有的 VIEW 都必须修改;用 WHERE语句可以解决问题但是安全性不好,只能在应用程序级别才能控制,绕开应用程序就无法控制。
VPD 技术在数据库级别的安全控制有效的解决了数据访问操作的权限问题,可以对数据库对象进行访问控制,可以灵活的隔离数据,
比在应用层权限控制实现起来较方便,权限维护也比容易。VPD访问控制原理也是使用where语句来控制,
只是这个where语句是数据库在操作数据时自动拼接,不是在应用层拼接,而且由事先定义的策略来决定是否拼接条件语句。
参见: