Oracle 用户及角色介绍

Oracle 用户及角色介绍 

用户管理

1.1 建立用户(数据库验证)

     CREATE  USER   DAVE  IDENTIFIED  BY   pwd

     DEFAULT TABLESPACE  users

     TEMPORARY   TABLESPACE  temp

     QUOTA  5m  ON  users;

 

1.2 修改用户

ALTER USER DAVE QUOTA 0 ON SYSTEM;

 

1.3 删除用户

DROP USER DAVE;

DROP USER DAVE CASCADE;

 

1.4 显示用户信息

SELECT * FROM DBA_USERS

SELECT * FROM DBA_TS_QUOTAS

 

.系统权限

系统权限

作用

CREATE SESSION

连接到数据库

CREATE TABLE

建表

CREATE TABLESPACE

建立表空间

CREATE VIEW

建立视图

CREATE SEQUENCE

建立序列

CREATE USER

建立用户

 

系统权限是指执行特定类型SQL命令的权利,用于控制用户可以执行的一个或一类数据库操作。(新建用户没有任何权限)

 

2.1 授予系统权限

GRANT CREATE SESSION,CREATE TABLE TO DAVE;

GRANT CREATE SESSION TO DAVE WITH ADMIN OPTION;

 

选项:ADMIN OPTION 使该用户具有转授系统权限的权限。

 

2.2 显示系统权限

 

查看所有系统权限:

Select * from system_privilege_map;

显示用户所具有的系统权限:

Select * from dba_sys_privs;

显示当前用户所具有的系统权限:

Select * from user_sys_privs;

显示当前会话所具有的系统权限:

Select * from session_privs;

 

2.3 收回系统权限

REVOKE CREATE TABLE FROM DAVE;

REVOKE CREATE SESSION FROM DAVE;

 

 

 .角色:

角色是一组相关权限的命名集合,使用角色最主要的目的是简化权限管理。

 

3.1 预定义角色。

CONNECT自动建立,包含以下权限:ALTER SESSION、CREATE CLUSTER、CREATE DATABASELINK、CREATE SEQUENCE、CREATE SESSION、CREATE SYNONYM、CREATE TABLE、CREATEVIEW。

RESOURCE自动建立,包含以下权限:CREATE CLUSTER、CREATE PROCEDURE、CREATE SEQUENCE、CREATE TABLE、CREATE TRIGGR。

 

3.2 显示角色信息,

§ROLE_SYS_PRIVS

§ROLE_TAB_PRIVS

§ROLE_ROLE_PRIVS

§SESSION_ROLES

§USER_ROLE_PRIVS

§DBA_ROLES

 

. Oracle用户角色

每个Oracle用户都有一个名字和口令,并拥有一些由其创建的表、视图和其他资源。

Oracle角色(role就是一组权限(privilege)(或者是每个用户根据其状态和条件所需的访问类型)。用户可以给角色授予或赋予指定的权限,然后将角色赋给相应的用户。一个用户也可以直接给其他用户授权。

数据库系统权限(Database System Privilege)允许用户执行特定的命令集。例如,CREATE TABLE权限允许用户创建表,GRANT ANY PRIVILEGE权限允许用户授予任何系统权限。

数据库对象权限(Database Object Privilege)使得用户能够对各个对象进行某些操作。例如DELETE权限允许用户删除表或视图的行,SELECT权限允许用户通过select从表、视图、序列(sequences)或快照 (snapshots)中查询信息。

 

4.1 创建用户

Oracle内部有两个建好的用户:SYSTEM和SYS。用户可直接登录到SYSTEM用户以创建其他用户,因为SYSTEM具有创建别的用户的权限。在安装Oracle时,用户或系统管理员首先可以为自己建立一个用户。例如:

create user user01 identified by u01;

该命令还可以用来设置其他权限。

改变一个口令,可以使用alter user命令:

alter user user01 identified by usr01;

 现在user01的口令已由“u01”改为“usr01”。

 

除了alter user命令以外,用户还可以使用password命令。如果使用password命令,用户输入的新口令将不在屏幕上显示。dba特权的用户可以通过password命令改变任何其他用户的口令;其他用户只能改变自己的口令。

 

当用户输入password命令时,系统将提示用户输入旧口令和新口令,如下所示:

password

    Changing password for user01

    Old password:

    New password:

    Retype new password:

    当成功地修改了口令时,用户会得到如下的反馈:

Password changed

 

4.2 删除用户

    删除用户,可以使用drop user命令,如下所示:

drop user user01;

如果用户拥有对象,则不能直接删除,否则将返回一个错误值。指定关键字CASCADE,可删除用户所有的对象,然后再删除用户。

下面的例子用来删除用户与其对象:

drop user user01 CASCADE;

 

4.3 3种标准角色

Oracle<span margin-top:4px;"="" style="word-wrap: break-word; color: red; font-family: 宋体;"> 注:暂存的内容只能恢复到当前文章的编辑器中,如需恢复到其他文章中,请编辑该文章并从暂存箱中恢复;或者直接复制以上内容,手工恢复到相关文章。

参考:

oracle系统角色 百度

oracle创建普通用户 百度

你可能感兴趣的:(Oracle 用户及角色介绍)