分类: Oracle
2008-04-21 19:26:26
Profile控制
Oracle利用profile机制来管理会话资源占用,同时也管理用户密码的安全策略。
通过profile我们可以实现:
◆某个特定用户最多只能占用系统百分之几的CPU时间?
◆某个特定用户连接到数据库之后能存活多长时间?
◆某个特定用户连接到数据库之后多长时间处于非活跃状态就将被系统中断连接?
◆用户登录密码输入错误多少次之后就将自动锁定用户?
◆用户密码的长度和包含的字符必须符合什么样的规则?
◆用户密码在多少天后将自动失效并要求设定新密码?
用户权限控制(Privilage)
Oracle通过角色(Role),权限(Privilage)等的一系列授予(Grant)和回收(Revoke)操作可以有效的进行用户的权限控制。
通过权限控制我们可以实现:
◆某个特定用户只能读取而不能修改另一个用户的表数据。
◆某个特定用户只能运行Oracle数据库系统的几个存储过程或者函数。
◆某个特定用户自己能够拥有修改某些数据的权力,但是却无法给其它不拥有这个权限的用户授予修改该数据的权力。
◆某个特定用户可以读取数据但是无法创建新的表空间。
虚拟专用数据库(VPD)
虚拟专用数据库 (VPD) 也称为细粒度访问控制,它提供强大的行级安全功能。它是在 Oracle8i 中推出的,已经受到广泛的欢迎。
VPD 的工作方法是,通过透明地更改对数据的请求,基于一系列定义的标准向用户提供表的局部视图。在运行时,所有查询都附加了谓词,以便筛选出准许用户看到的行。
也就是通过VPD的设置,我们可以做到行级安全性控制,特定的用户即使对一张表有读取权限,那么也只能看到符合自身权限的记录。
注意,在Oracle10g版本中,VPD得到增强,已经可以实现字段级的安全性控制了。
实例及搭建步骤参看:利用VPD细粒度访问策略实现行级安全性Step By Step。
Orace Label Security
基于对由客户提交的行级安全性的严格要求,Oracle Label Security(Oracle 数据库企业版的选件之一)利用多级安全性概念解决了世界上政府和商业用户在实际中遇到的数据安全和隐私问题。
OLS 通过利用数据敏感度标签(例如“敏感”和“公司机密”)与用户标签授权,提供了完善的行级安全性控制。
OLS 使用政策概念来存储标签定义和授权。该政策可直接在数据库中进行管理,或在 Oracle 身份管理中进行集中管理。
Oracle Database Valut
通常数据库管理员如果具有了DBA权限,那么就很难防止这样的管理员查看应用程序数据。而Oracle Database Valut则解决了必须保护涉及合作伙伴、员工和顾客的敏感业务信息或隐私数据的客户最为担心的问题。
Oracle Database Vault 可防止高权限的应用程序 DBA 访问其他的应用程序、执行其权限之外的任务。Oracle Database Vault 可在不影响应用程序功能的前提下快速而高效地保护现有程序。
Oracle Database Vault 可通过下列方法解决一些最为常见的安全问题和内部威胁:
1. 限制 DBA 和其他授权用户访问应用程序数据。
2. 防止DBA 操纵数据库和访问其他应用程序。Oracle Database Vault 提供了强大的职责划分控制功能,可防止擅自更改数据库。比如说如果一个用户具有 CREATE USER 权限,但不具备正确的用户管理权限,则 Oracle Database Vault 将阻止该 DBA 创建新用户。
3. 更好的控制何人、何时、何地可以访问应用程序。如日期时间、数据库客户端在网络上的位置之类的因素。
Oracle Database Valut是新的Oracle Database 10g企业版的选件。目前已经有Linux X86以及Solaris SPARC 64bit的版本可以下载使用了。