oracle权限

原创 2012年03月30日 17:11:22

一、系统权限:

  授予系统权限

    要想授予其他用户或者角色系统权限,需要满足下列条件之一:

    1、具有grant any privilege权限

    2、用户被授予权限时带有admin option选项

   grant system_privilege to user_name [with admin option]

 

     --可以同时给用户或者角色授予多个权限或者角色,也可以同时将多个权限或者角色授予给多个用户或者角色

    比如:grant create table,select any transaction to scott,resource;

      --也可以将权限或者角色授予public,public在数据库是一个特殊的模式,任何都将获得被授予public的权限。

    比如:grant flashback any table to public;

    在授予系统权限时可以带有admin option选项。这样被授予此权限的用户也可以将此权限授予其他用户或者角色。

    比如:grant advisor to scott,system with admin option;

     --当同时将多个权限或者角色授予给多个用户或者角色时使用with admin option,with admin option针对所有用户或者角色以及 所有权限或者角色。

    all privileges不是权限,但可是使用all privileges把所有权限授予其他用户或者角色,但不包含select any dictionary权限。

    比如:grant all privileges to scott;

 

    收回权限:

       revoke system_priv  from user_name [cascade constraints]

         --cascade constraints 表示有关联的权限也被收回

     

    从用户收回权限:revoke alter database from scott;

    从角色收回权限:revoke audit system from dba;

    从public收回权限:revoke create database link from public

     可以同时从多个用户或者角色那里收回多个权限或者角色:revoke create any table,resource from scott,dba;

    在收回系统权限时,不会级联收回。


二、对象权限

    索引、集群、触发器、数据库连接没有对象权限,他们通过系统权限进行管理

     对象权限级联收回。
     授予对象权限

       要想授予其他用户对象权限,用户需要满足下列其一条件:

         1、对象的所有者

         2、具有grant any object privilege权限

         3、用户被授予对象权限时带有grant option选项

              grant object_priv  on schema.object to user_name [with grant option] [with hierarchy option]

                       --with hierarchy option 表示对象的子对象上授权给用户,只针对select。

                       -- 可以将同一模式对象上的多个对象权限授予多个用户或者角色,反之亦然。

                          比如:grant select,update on scott.emp  to system,resource,public

                       --在授予对象权限时可以使用grant option选项,允许其他用户将此权限授予其他用户,但在将对象授予角色时不允许带grant option

                         比如:grant insert,index,flashback on scott.emp to system,public  with grant option;

                       --可以使用 all将对象上的所有权限授予其他用户:grant all on scott.emp to public with grant option;

                      --可以授予列权限:grant update(deptno) on scott.emp to system;

      收回对象权限

           revoke object_priv  on schema.object from username [cascade constraints]

            -- 可以将同一模式对象上的多个对象权限从多个用户或者角色收回,反之亦然。

            --在收回对象权限时将级联收回

            --不存在列级收回权限,即使是列级授予权限,也必须表级收回

三、查询用户的权限

    使用下列数据字典查询用户具有的权限

       session_privs              --会话具有的权限

       dba_sys_privs             --可以查询用户具有的系统权限

       dba_tab_privs             --可以查询用户具有的对象权限

       dba_col_privs             --查询用户具有的列级权限

       system_privilege_map --查询数据库上的系统权限

Oracle中的所有权限

grant alter system to zys;  grant audit system to zys; grant create session to zys;  grant al...
  • wwwzys
  • wwwzys
  • 2013年04月17日 14:09
  • 3722

Oracle 权限介绍及管理

Oracle权限分为两种:分别是系统权限(system privileges):  包括创建/删除表 , 创建删除用户等.对象权限(object privileges):  操控数据库特定对象的内容,...
  • nvd11
  • nvd11
  • 2013年04月02日 00:56
  • 918

Oracle中的常用权限

grant create user to 用户名 ----------把创建用户权限给  用户名 grant alter user to 用户名   ----------把修改用户权限给  用户名 ...
  • xiaoyu_BD
  • xiaoyu_BD
  • 2016年08月24日 00:35
  • 1083

mysql grant 用户权限总结

Mysql 有多个个权限?经常记不住,今天总结一下,看后都能牢牢的记在心里啦!!...
  • wulantian
  • wulantian
  • 2014年07月28日 15:23
  • 36484

sql授权命令grant

因个人对数据库授权命令的喜爱,所以写了这篇文章,一来学会命令的使用, 二来为以后复习之用。 ----------------------------------------------------...
  • friendan
  • friendan
  • 2012年12月14日 13:32
  • 33284

j2me学习一_学习计划

为什么学j2me?因为刚学了java,想做些东西,为什么不上android.iphone?电脑伤不起.正文: 学j2me快一周了,照着书也敲了一些代码,但是发现很多东西都还不懂怎么用,而且看的基都是国...
  • qp120291570
  • qp120291570
  • 2011年05月24日 21:49
  • 1043

Oracle常见授权与回收权限——grant和revoke

Oracle常见授权与回收权限——grant和revoke
  • liuweiyuxiang
  • liuweiyuxiang
  • 2015年10月15日 20:22
  • 5506

oracle权限视图

查看某个用户在某个对象的权限,可以查dba_tab_privs 或者user_tab_privs   如下:某普通用户登陆,查自己的角色 SQL> select * fr...
  • aoerqileng
  • aoerqileng
  • 2014年11月08日 17:28
  • 1192

Oracle Concepts 11g (R2) 原版

  • 2013年04月25日 10:45
  • 3.46MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle权限
举报原因:
原因补充:

(最多只允许输入30个字)