【发布时间】:2013-01-05 20:19:45
【问题描述】:
我正在尝试分析 DBMS 提供的安全性,以下场景简要说明了我正在寻找的内容。
//当前连接数据库的用户是“master”
// 1. 创建新用户的基本步骤
CREATE USER slave
IDENTIFIED BY SlavePassword
DEFAULT TABLESPACE SomeTablespace;
// 2. 为新用户授予基本角色
GRANT CONNECT TO slave;
GRANT RESOURCE TO slave;
// 3. 新用户“slave”现已连接数据库
// 用户“slave”创建数据库对象(表、过程等),并授予系统其他用户的权限
如何让创建者“master”在没有得到“slave”用户明确许可的情况下,获得创建的用户“slave”拥有或将来将拥有的任何权限?
我知道从属可以将他的任何权限授予其他用户,但是是否有特殊权限允许其他用户获得“从属”将来拥有的权限?
我正在使用 Oracle,我不确定其他 DBMS 是否允许这种情况。
【问题讨论】:
-
您可能希望避免使用 RESOURCE。来自Database Security Guide:“注意:Oracle 建议您为数据库安全设计自己的角色,而不是依赖此角色。Oracle 数据库的未来版本可能不会自动创建此角色。”
标签: database oracle database-schema database-management