Linux系统中Oracle数据库的用户权限

2014-11-24 17:29:52 · 作者: · 浏览: 0

  在Oracle数据库中,用户的权限分为两种(在这里我们不讨论dba或oper的权限,只考虑普通用户的权限),分别是System Privilege系统权限 和User Table Privilege用户数据表权限.


  1.首先,创建用户,以下几条命令可以创建一个用户,前提是必须以DBA的身份登录(如果你不是DBA,不要看下去了):


  create user DB_USER identified by DB_USER_PW '创建用户DB_USER,密码为DB_USER_PW


  grant create session to DB_USER '给用户创建会话的权限


  grant resource to DB_USER


  2.当用户建立后,会自动在Oracle数据库系统中生成属于该用户的Scheme (可以理解为所有属于该用户的表,视图....等对象的集合).


该用户可以将对这些对象的访问权限赋予其它的系统用户.


  3.该用户用sqlplus登录后,以下命令可以看到该用户的权限(该部分取自于CNOUG网站):


  本用户读取其他用户对象的权限:


  select * from user_tab_privs;


  本用户所拥有的系统权限:


  select * from user_sys_privs;


  ORACLE数据库用户与权限管理


  ORACLE是多用户系统,它允许许多用户共享系统资源。为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。


  2. 1 ORACLE数据库安全策略


  建立系统级的安全保证


  系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间、建立用户、修改用户的权利、删除用户等。系统特权可授予用户,也可以随时回收。ORACLE系统特权有80多种。


  建立对象级的安全保证


 对象级特权通过授予用户对数据库中特定的表、视图、序列等进行操作(查询、增、删改)的权利来实现。


  建立用户级的安全保证


  用户级安全保障通过用户口令和角色机制(一组权利)来实现。引入角色机制的目的是简化对用户的授权与管理。做法是把用户按照其功能分组,为每个用户建立角色,然后把角色分配给用户,具有同样角色的用户有相同的特权。


  2.2 用户管理


  ORACLE用户管理的内容主要包括用户的建立、修改和删除


  用户的建立


  SQL>CREATE USER jxzy


  >IDENTIFIED BY jxzy_password


  >DEFAULT TABLESPACE system


  >QUATA 5M ON system; //供用户使用的最大空间限额


  用户的修改


  SQL>CREATE USER jxzy


  >IDENTIFIED BY jxzy_pw


  >QUATA 10M ON system;


  删除用户及其所建对象


  SQL>DROP USER jxzy CASCADE; //同时删除其建立的实体