Oracle之用户和权限
原创
©著作权归作者所有:来自51CTO博客作者Lucky麒麟的原创作品,请联系作者获取转载授权,否则将追究法律责任
1. 创建用户
DBA
使用create user
语句创建用户:
create user 用户名
identified by 密码;
2. 用户的系统权限
权限包括:
-
create session
(创建会话) -
create table
(创建表) -
create sequence
(创建序列) -
create view
(创建视图) -
create procedure
(创建存储过程)
3. 创建角色并赋权
创建角色
为角色赋予权限
grant create table, create view to manager;
将角色赋予用户
grant manager to dehaan, kochhar;
4. 修改密码
DBA
可以创建用户和修改密码
用户本人可以使用alter user 语句修改密码
alter user 用户名 identfied by 密码;
5. 对象权限
- 不同的对象具有不同的对象权限
- 对象的拥有者拥有所有权限
- 对象的拥有者可以向外分配权限
grant 操作权限
on 拥有者 (拥有者.表 or 表)
to 分配者
实例
# 分配表emp的查询权限
grant all | select | update | delete on emp to iscoos;
# 分配表中各个列的更新权限
grant update (department_name, location_id) on departments to scott, manager;
6. 分配对象权限
with grant option
使用户同样具有分配权限的权利
grant select , insert on departments to scott with grant option;
grant select on scott.departments to icss;
7. 收回对象权限
使用revoke
语句收回权限
使用with grant option
子句所分配的权限同样被收回
REVOKE {privilege [, privilege...]|ALL}
ON object
FROM {user[, user...]|role|PUBLIC}
[CASCADE CONSTRAINTS];
实例
REVOKE select, insert
ON departments
FROM scott;
Revoke succeeded.