权限、角色

一。权限

权限最大的用户是:
sysdba和sysoper

1.创建用户:

create user zhangsan identified by mima;
创建完的用户没有任何权限,包括登录的权限都没有。

2.用户授权

grant create tablespace,connect to zhangsan;

3.一个开发者需要的权限:

创建会话:grant create session to 用户名;
创建表:grant create table to 用户名;
创建视图:
创建序列:
创建过程:

4.dba给用户修改密码:

alter user scott identified by tiger;

5.对象权限:

对象权限 视图 序列 存储过程
alter
delete
execute
index
insert
references
select
update

6.授予对象权限

①授予在emp表上进行查询的权限:
grant select
on emp
to sue,rich;

②为用户和角色授予dept表上的某些列的修改权限:
grant update(dname, loc)
on dept
to jack,john;

③with grant option:
被授权的用户还能把权限给其他人。
grant insert, select
on dept
to tom
with grant option;

④to public :
允许系统中所有用户访问Alice的dept表:
grant select
on alice.dept
to public;

7.回收对象权限

revoke select, insert
on dept
from scott;

注意:
假设Scott把权限给了A,A把权限给了B,那么Scott只能收回A的权限,而不能收回B的权限。
如果Scott收回了A的权限,相应的B的权限也不存在了。

8.验证授权情况

数据字典表 描述
role_sys_privs 授予角色的系统权限
role_tab_privs 授予角色的表权限
user_role_privs 用户能存取的角色
user_tab_privs_made 在用户对象上所授予的系统权限情况
user_tab_privs_recd 授权给用户的对象权限
user_col_privs_made 在用户对象的列上所授予的对象权限情况
user_col_privs_recd 授予对象的某些列的对象权限情况

二。角色

Oracle用角色来简化对权限的管理。

1.创建角色:

create role manage;

2.给角色授权:

grant create table,create view to manage;

3.授予开发者的角色:

grant connect, resource to 开发者;

其中,connect和resource是dba默认的角色。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章