分类: Oracle
2010-08-24 11:50:49
ORACLE中数据字典视图分为3大类,用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。
其中,USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
(这里的*可以为TABLES, INDEXES, OBJECTS, USERS等。
1.查看所有用户:
select * from dba_users;
select * from all_users;
select * from user_users; //包括该用户的一些账户信息,如缺省(临时)表空间,账号状态等
2.查看用户系统权限:
select * from dba_sys_privs; //查询某个用户所拥有的系统权限
如:select * from dba_sys_privs where grantee='XXX'
select * from user_sys_privs;//USER_SYS_PRIVS当前用户所拥有的系统权限
select * from SESSION_PRIVS;//session_privs 当前用户所拥有的全部权限
3.查看用户对象权限:
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
4.查看角色:
select * from dba_roles;
ROLE_SYS_PRIVS: 某个角色所拥有的系统权限
注意: 要以SYS用户登陆查询这个视图,否则返回空.
ROLE_ROLE_PRIVS: 当前角色被赋予的角色
SESSION_ROLES: 当前用户被激活的角色
USER_ROLE_PRIVS: 当前用户被授予的角色
5.查看用户所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs;
6.查看当前用户的缺省表空间
select username,default_tablespace from user_users;
7.查看某个角色的具体权限,如grant connect,resource,create session,create view to TEST;查看RESOURCE具有那些权限,用
SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='RESOURCE';
chinaunix网友2010-08-26 14:21:19
Download More than 1000 free IT eBooks: http://free-ebooks.appspot.com