当前位置:Gxlcms > 数据库问题 > Java培训-ORACLE数据库学习【2】用户权限

Java培训-ORACLE数据库学习【2】用户权限

时间:2021-07-01 10:21:17 帮助过:21人阅读

查询用户拥有的权限:

1.查看所有用户:

  select from dba_users;  select from all_users;  select from user_users; 2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):  select from dba_sys_privs;  select from user_sys_privs;  3.查看角色(只能查看登陆用户拥有的角色)所包含的权限sql>select from role_sys_privs; 4.查看用户对象权限:  select from dba_tab_privs;  select from all_tab_privs;  select from user_tab_privs; 5.查看所有角色:  select from dba_roles; 6.查看用户或角色所拥有的角色:  select from dba_role_privs;  select from user_role_privs;  7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)select from V$PWFILE_USERS  比如我要查看用户 wzsb的拥有的权限: SQL> select from dba_sys_privs where grantee=‘WZSB‘;  GRANTEE                        PRIVILEGE                                ADMIN_OPTION------------------------------ ---------------------------------------- ------------WZSB                           CREATE TRIGGER                           NOWZSB                           UNLIMITED TABLESPACE                     NO 比如我要查看用户 wzsb的拥有的角色: SQL> select from dba_role_privs where grantee=‘WZSB‘;  GRANTEE   GRANTED_ROLE   ADMIN_OPTION  DEFAULT_ROLE------------------------------ ------------------------------ ------------ ------------WZSB                           DBA                         NO              YES 查看一个用户所有的权限及角色select privilege from dba_sys_privs where grantee=‘WZSB‘unionselect privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee=‘WZSB‘ );

      3.1 oracle权限分类:

      系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。
      实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。


      3.2 系统权限:

      DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。
      RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
     CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
      对于普通用户:授予connect, resource权限。
      对于DBA管理用户:授予connect,resource, dba权限。


      3.3 实体权限:

  • 实体权限的授命令
    语法如下:GRANT 实体权限名|ALL TO 用户|角色|PUBLIC,其中,ALL表示实体的所有实体权限。
    如:SQL>GRANT SELECT ON BOOKS_QUTHORS TO USER1;

  • 用来查询表的实体权限的授权信息:SQL>SELECT * FROM USER_TAB_PRIVES

  • 回收实体权限,使用REVOKE,其语法如下:
    REVOKE 实体权限名|ALL ON 实体名 FROM 用户名|角色名|PUBLIC。

      

权限传递:

grant select on xiaoming.temp to xiaohong ;//登录xiaoming后,将小明的temp表的查询权限授给xiaohong;

本文出自 “ming” 博客,请务必保留此出处http://8967938.blog.51cto.com/8957938/1678274

Java培训-ORACLE数据库学习【2】用户权限

标签:oracle   java   sql   

人气教程排行