oracle用户权限

来源:互联网 发布:淘宝网夹子 编辑:程序博客网 时间:2024/05/01 11:59

我们用一个账号登陆oracle进行操作,到底可以执行哪些操作,权限有多大,你可得仔细搞清楚:

1. 用户拥有哪些对象的操作权限:对象包括表,视图,存储过程等,操作包括select,update,insert,delete等

SELECT * FROM Dba_Tab_Privs t WHERE t.grantee='ORACLE';

2. 用户拥有哪些系统操作权限:包括:SELECT ANY TABLE,ALTER SESSION等

SELECT * FROM Dba_Sys_Privs t WHERE t.grantee='ORACLE';

3. 用户拥有哪些角色。包括常用的DBA,

SELECT * FROM Dba_Role_Privs t WHERE t.GRANTEE IN ('ORACLE');

角色也是一系列权限的集合,所以你的用户拥有某个角色的权限,你就要去查这个角色拥有哪些权限。

4. 角色拥有哪些角色

SELECT * FROM ROLE_ROLE_PRIVS T WHERE t.ROLE='DBA'

5. 角色拥有哪些系统操作权限

SELECT * FROM Role_Sys_Privs t WHERE t.ROLE='DBA';

如果查不到还是回去查SELECT * FROM Dba_Sys_Privs t WHERE t.grantee='CONNECT';

6. 角色拥有哪些对象操作权限:

SELECT * FROM Role_Tab_Privs t WHERE t.ROLE='DBA';

如果查不到还是回去查SELECT * FROM Dba_Tab_Privs t WHERE t.grantee='DBA';

其他都一目了然,主要是角色这东西,一层接一层的,所以你要耐心的去找用户到底拥有多少权限。。。。。