带您了解ORACLE resource角色

时间:2022-06-06 21:05:22

ORACLE resource角色都有什么样的权限呢?下面就为您介绍如何查看ORACLE resource角色的权限的方法,希望对您能有所帮助。

  1. SQL> select * from v$version where rownum<=1;  
  2.  
  3. BANNER  
  4. --------------------------------------------------------------------------------  
  5. Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi  

从role_sys_privs中看ORACLE resource角色的权限

  1. SQL> select PRIVILEGE from role_sys_privs where role='RESOURCE';  
  2.  
  3. PRIVILEGE  
  4. --------------------------------------------------------------------------------  
  5. CREATE CLUSTER  
  6. CREATE SEQUENCE  
  7. CREATE TRIGGER  
  8. CREATE TABLE  
  9. CREATE PROCEDURE  
  10. CREATE TYPE  
  11. CREATE OPERATOR  
  12. CREATE INDEXTYPE  
  13.  
  14. 8 rows selected.  

当把ORACLE resource角色授予一个user的时候,不但会授予ORACLE resource角色本身的权限,而且还有unlimited tablespace权限。

  1. SQL> conn desk  
  2. Enter password:  
  3. Connected.  
  4. SQL> select PRIVILEGE from user_sys_privs;  
  5. no rows selected  
  6. SQL> conn / as sysdba  
  7. Connected.  
  8. SQL> grant resource to desk;  
  9. Grant succeeded.  
  10. SQL> conn desk  
  11. Enter password:  
  12. Connected.  
  13. SQL> select PRIVILEGE from user_sys_privs;  
  14. PRIVILEGE  
  15. ----------------------------------------  
  16. UNLIMITED TABLESPACE  
  17. SQL> 
  18.  

当把resource授予一个role时,就不会授予unlimited tablespace权限

  1. SQL> show user  
  2. USER is "SYS"  
  3. SQL> create role testrole identified using testrole;  
  4. Role created.  
  5. SQL> revoke resource from desk;  
  6. Revoke succeeded.  
  7. SQL> grant resource to testrole;  
  8. Grant succeeded.  
  9. SQL> grant testrole to desk;  
  10. Grant succeeded.  
  11. SQL> conn desk  
  12. Enter password:  
  13. Connected.  
  14. SQL> select privilege from user_sys_privs;  
  15. no rows selected  
  16. SQL>