预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

一.前言 1.查看所有用户:select*fromdba_users;select*fromall_users;select*fromuser_users;2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):select*fromdba_sys_privs;select*fromuser_sys_privs; 3.查看角色(只能查看登陆用户拥有的角色)所包含的权限 sql>select*fromrole_sys_privs;4.查看用户对象权限:(实际从pl/sql界面,用户的user视图中可以看到)select*fromdba_tab_privs;select*fromall_tab_privs;select*fromuser_tab_privs;5.查看所有角色:select*fromdba_roles;6.查看用户或角色所拥有的角色:select*fromdba_role_privs;select*fromuser_role_privs; 7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限) select*fromV$PWFILE_USERS 二.Oracle权限设置 一、权限分类:系统权限:系统规定用户使用数据库的权限。(系统权限是对用户而言)。 实体权限:某种权限用户对其它用户的表或视图的存取权限。(是针对表或视图而言的)。 二、系统权限管理:1、系统权限分类:DBA:拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。 RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。 CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。 对于普通用户:授予connect,resource权限。对于DBA管理用户:授予connect,resource,dba权限。 2、系统权限授权命令:[系统权限只能由DBA用户授出:sys,system(最开始只能是这两个用户)]授权命令:SQL>grantconnect,resource,dbato用户名1[,用户名2]...; [普通用户通过授权可以具有与system相同的用户权限,但永远不能达到与sys用户相同的权限,system用户的权限也可以被回收。] 例:SQL>connectsystem/managerSQL>Createuseruser50identifiedbyuser50;SQL>grantconnect,resourcetouser50; 查询用户拥有哪里权限:SQL>select*fromdba_role_privs;SQL>select*fromdba_sys_privs;SQL>select*fromrole_sys_privs; 删除用户:SQL>dropuser用户名cascade;//加上cascade则将用户连同其创建的东西全部删除 3、系统权限传递:增加WITHADMINOPTION选项,则得到的权限可以传递。 SQL>grantconnect,resorcetouser50withadminoption;//可以传递所获权限。 4、系统权限回收:系统权限只能由DBA用户回收命令:SQL>Revokeconnect,resourcefromuser50; 说明: 1)如果使用WITHADMINOPTION为某个用户授予系统权限,那么对于被这个用户授予相同权限的所有用户来说,取消该用户的系统权限并不会级联取消这些用户的相同权限。 2)系统权限无级联,即A授予B权限,B授予C权限,如果A收回B的权限,C的权限不受影响;系统权限可以跨用户回收,即A可以直接收回C用户的权限。 三、实体权限管理1、实体权限分类:select,update,insert,alter,index,delete,all//all包括所有权限execute//执行存储过程权限 user01:SQL>grantselect,update,insertonproducttouser02;SQL>grantallonproducttouser02; user02:SQL>select*fromuser01.product; //此时user02查user_tables,不包括user01.product这个表,但如果查all_tables则可以查到,因为他可以访问。 2.将表的操作权限授予全体用户:SQL>grantallonproducttopublic;//public表示是所有的用户,这里的all权限不包括drop。 [实体权限数据字典]:SQL>selectowner,table_namefromall_tables;//用户可以查询