标签:ons direction round ssi 1.0 cascade 系统权限 备份 sql
1、如何控制用户访问
1、身份验证,认证:Authentication
2、授权:Authorization
3、审计:Audit
2、权限
3、创建用户
DBA使用CREATE USER语句创建用户
CREATE USER user identified BY password;
| SQL> create user wendy identified by wendy; 
 User created. | 
4、用户被创建后,DBA可以对用户授予特殊的系统权限.
一个应用程序开发者,可能有如下系统权限:
用户被创建后,DBA可以对那个用户授予特殊的系统权限.
GRANT privilege [, privilege…]
To user [, user| role, PUBLIC…];
授予系统权限
DBA能授予某系统权限给用户
| SQL> GRANT create session,create table,create sequence,create view to wendy; 
 Grant succeeded. | 
5、什么是角色Role?
CREATE ROLE manager;
GRANT create table, create view To manager;
GRANT manager To wendy, gaga;
| SQL> create role manager; 
 Role created. 
 SQL> grant create table,create view to manager; 
 Grant succeeded. 
 SQL> grant manager to wendy; 
 Grant succeeded. | 
 
6、修改你的密码
DBA创建你的用户帐号和初始化你的密码
你能使用ALTER USER语句改变密码
| ALTER USER wendy IDENTIFIED BY wendypassword; | 
7、什么是对象,什么是对象权限?
TABLE,VIEW,Sequence 等为对象,在对象上的权限为对象权限,这个权限不是全局的.系统权限是全局的.
每种对象的权限都不同
对象宿主拥有在对象上全部的权限
对象宿主能授予对象权限给其他用户.
| GRANT object_priv[(columns)] ON object TO {user|role|PUBLIC} [WITH GRANT OPTION]; | 
 
赋予对象权限
在t表中赋予查询特权:
GRANT select
ON t
TO wendy;
赋予更新某列的特权给用户和角色:
GRANT update(id,name)
ON t
TO wendy,manager;
| SQL> grant select 2 on t 3 to wendy; 
 Grant succeeded. 
 SQL> grant update(id,name) 2 on t 3 to wendy,manager; 
 Grant succeeded. | 
8、传递特权
授予用户给其他用户权限的权限:
GRANT select,insert
ON t
TO wendy
WITH GRANT OPTION;
| SQL> grant select,insert 2 on t 3 to wendy 4 with grant option; 
 Grant succeeded. | 
允许系统上的所有用户从wendy的t表中查询数据:
GRANT select
ON wendy.t
TO PUBLIC;
| SQL> grant select 2 on wendy.t 3 to public; 
 Grant succeeded. ------------注意:wendy.t是指wendy用户下的t表,所以一定要保证这个用户下有这张表 | 
9、检查赋予的特权
| 数据字典视图 | 描述 | 
| ROLE_SYS_PRIVS | 授予角色的系统权限 | 
| ROLE_TAB_PRIVS | 授予角色的表权限 | 
| USER_ROLE_PRIVS | 授予用户的角色 | 
| USER_SYS_PRIVS | 授予用户的系统权限 | 
| USER_TAB_PRIVS_MADE | 用户对象上授予的权限 | 
| USER_TAB_PRIVS_RECD | 授予用户的对象权限 | 
| USER_COL_PRIVS_MADE | 用户某列上授予的对象权限 | 
| USER_COL_PRIVS_RECD | 授予用户某列上的对象权限 | 
10、撤销对象权限
使用revoke语句来撤销曾赋予给用户的权限
通过WITH GRANT OPTION子句被传递给其他用户的权限也被撤销
Revoke{privilege [, privilege…]| ALL}
ON object
FROM {user[,user…] | role| PUBLIC}
[CASCADE constraints];
CASCADE表示把他下面依赖的权限都撤销.
在wendy的表中,撤销SELECT和INSERT权限
REVOKE select,insert
ON t
FROM wendy;
11、总结
| 语句 | 解释 | 
| Create user | Creates a user(usually performed by a DBA) | 
| Grant | Gives other users privileges to access the objects | 
| Create role | Creates a collection of privileges, usually performed by a DBA | 
| Alter user | Changes a user‘s password | 
| Revoke | Removes privileges on an object from users | 
Oracle DCL(Data Control Language)数据控制语言(权限privilege,角色role,用户user介绍)
标签:ons direction round ssi 1.0 cascade 系统权限 备份 sql
原文地址:http://www.cnblogs.com/scentpath/p/oraclerole.html