oracle10查看用户权限

来源:互联网 发布:淘宝购物要网银吗 编辑:程序博客网 时间:2024/05/16 19:24

    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 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



--create user syj identified by syj --新建立用户syj,密码为syj


--alter user syj identified by syj default tablespace student quota 1M ON system --修改用户密码和参数

--grant RESOURCE,CONNECT,DBA to syj --给syj用户付权限

--grant select ,insert(sno,cno),update on sscc to syj --为用户对象付特权

--GRANT CREATE USER,ALTER USER,DROP USER TO syj WITH ADMIN OPTION

--revoke CREATE USER,ALTER USER,DROP USER from syj --取消syj用户权限和对象特权

--drop user syj cascade --删除用户,不能删除已经连接的用户;cascade级联删除该用户的所有对象

--select * from all_users --查看系统所有用户

--select * from user_users --查看当前用户

--select * from user_tab_privs --读取用户对象权限,

--SELECT * FROM user_sys_privs --读取自己的系统权限

--select username,password from dba_users

--SELECT*FROM sys.dba_tab_privs where grantee='SYJ'--显示已经被授予的全部对象特权,要查syj用户对象权限可以在后面加上 where grantee='SYJ'


0 0