ORACLE 用户权限管理
开发工具与关键技术:Oracle sql*plus PLSQL Developer
作者:陈剑波
撰写时间:2019年01月01日
权限
系统权限: 对于数据库的权限:超过一百多种有效的权限。数据库管理员具有高级权限以完成管理任务,例如:创建新用户、删除用户,删除表、备份表。
对象权限: 操作数据库对象的权限:不同的对象具有不同的对象权限。对象的拥有者拥有所有权限。对象的拥有者可以向外分配权限。
创建用户赋予系统权限
DBA 使用 CREATE USER 语句创建用户,用户创建之后, DBA 赋予用户系统权限。使用GRANT 和 REVOKE 语句赋予和回收权限。
以应用程序员为例,一般具有以下权限:创建会话、创建表、创建序列、创建视图、创建过程。
创建用户赋予系统权限。见实现的代码:
创建角色并赋予权限,再将角色赋予用户。见实现的代码:
用户本人可以使用 ALTER USER 语句修改密码。见实现的代码:
对象权限:不同的对象具有不同的对象权限,对象的拥有者拥有所有权限,对象的拥有者可以向外分配权限。
例如,对象的拥有者向外分配对象权限,将BULUOLI用户下的BU表的查询权限赋给system用户。见实现的代码:
WITH GRANT OPTION 使用户同样具有分配权限的权利。将BULUOLI用户下的BU表的查询权限赋给system用户,再将system用户下的BU表的查询权限赋给FULISHA用户。见实现的代码:
PUBLIC关键字,向数据库中所有用户分配权限。例如,使用PUBLIC关键字让所有用户都可以查询KING表。见实现的代码:
收回对象权限:使用REVOKE语句收回权限。例如,收回BU表的所有权限。见实现的代码: