返回 Oracle 数据库安全性主页

安全应用程序角色

角色是一种用于在 Oracle 数据库中管理权限的强大方法。Oracle 在十多年前首次于 Oracle7 中引入了数据库角色。角色可以授予用户和其他角色。将角色授予用户后,角色可以被设置为默认角色,当用户成功地通过数据库访问权限验证时将激活与角色关联的权限。如果未将角色设置为默认角色,可以使用“set_role”命令调用它。

Oracle9i 向数据库角色引入了一个称为“安全应用程序角色”的强大增强功能。要创建安全应用程序角色,可以使用“create role”语法指定程序包名:

  create role acme_hr_role identified using approles_package

一旦授予了安全应用程序角色,用户必须有权执行与该角色相关的程序包以便使其激活。在本例中,approles_package 由数据库管理员或安全官使用 PL/SQL 进行定义。该程序包可以执行任何次数的安全检查,包括在 Oracle Application Context 中定义的应用程序特定的参数,从而使其难于规避。

您知道封装“set_role”命令的过程可以检查 Oracle Label Security 用户许可标签以确定是否激活该角色吗?

这是保护角色的最安全的方式,因为数据库制定的决策基于您的安全策略的实现,而且这些定义存储在一个中心位置,而不是存储在您所有的应用程序中。这还提供了其他好处:如果该策略需要更新,则在数据库中只能进行一次。此外,无论用户如何连接到数据库,结果都是相同的,因为该策略是绑定到该角色的。


 

上机操作

通过 OLS 用户授权来控制安全应用程序角色
Oracle 示例
 
了解更多
· Oracle 示例:数据库安全性

安全选件
· Oracle Database Vault
· Oracle Advanced Security
· Oracle Label Security
· Oracle 安全备份

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

相关技术
· Audit Vault
· 安全备份
· 配置管理
· 信息权利管理
· 身份管理

早期版本
· Oracle10g R2 安全性
· Oracle9iR2 安全性
· Oracle9i 安全性

论坛
· Audit Vault
· 安全性
· 数据库
寄送此页面
Printer View 打印机视图