1、查询用户拥有的系统权限SELECT GRANTEE,PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE ='SCOTT'
2、查询用户拥有的对象权限SELECT GRANTEE,TABLE_NAME,PRIVILEGE FROM DBA_TAB_PRIVS WHERE GRANTEE ='SCOTT'
3、查询用户拥有的角色SELECT GRANTEE,GRANTED_ROLE FROM DBA_ROLE_PRIVS WHERE GRANTEE ='SCOTT'
4、合并查询用户所拥有的权限(此语句没有将角色拥有的系统权限对象权限角色扩展开,可以查到角色后自行查询,后期会将其扩展开来)SELECT GRANTEE,PRIVILEGE,'system privileges' TYPE FROM DBA_SYS_PRIVS WHERE GRANTEE ='SCOTT'UNION ALLSELECT GRANTEE,PRIVILEGE || ' ON '||TABLE_NAME,'object privileges' TYPE FROM DBA_TAB_PRIVS WHERE GRANTEE ='SCOTT'UNION ALLSELECT GRANTEE,GRANTED_ROLE,'user role' TYPE FROM DBA_ROLE_PRIVS WHERE GRANTEE ='SCOTT'