《oracle10g权限与角色管理》由会员分享,可在线阅读,更多相关《oracle10g权限与角色管理(39页珍藏版)》请在金锄头文库上搜索。
1、Oracle10g权限与角色管理1数据库权限分类2Oracle10g用户权限类型3Oracle10g用户权限管理系统权限系统权限实体权限实体权限CREATE SESSION:连接到数据库连接到数据库CREATE TABLE:建表建表ANY特权:查询、修改、删除任意表特权:查询、修改、删除任意表ALTERDELETEEXECUTEINDEXINSERTREFERENCESSELECTUPDATE4系统权限管理5系统权限系统权限l通过授予系统权限,允许用户执行指定的数据库操作通过授予系统权限,允许用户执行指定的数据库操作l执行某种类型的命令,必须有相应的系统权限。执行某种类型的命令,必须有相应的系
2、统权限。l系统权限不是针对某个特定的用户的实体或结构,而是对一个特定操作或系统权限不是针对某个特定的用户的实体或结构,而是对一个特定操作或一类操作。一类操作。lORACLE拥有拥有120多种不同类型的系统权限,每个系统权限允许用户执行多种不同类型的系统权限,每个系统权限允许用户执行一个特定的数据库操作或一组数据库操作。一个特定的数据库操作或一组数据库操作。ORACLEAccessPrivilegeNew Users6Oracle系统系统权限(权限(1)Oracle系统系统权限(权限(2)系统权限授权命令:WITH ADMIN OPTION:可以将系统特权授予任意用户或角色可以将系统特权授予任意
3、用户或角色可以从任意用户或角色处收回系统特权可以从任意用户或角色处收回系统特权可以使用可以使用WITH ADMIN OPTION授予系统特权授予系统特权授予系统特权:授予系统特权:GRANT 系统特权名系统特权名 TO用户名用户名角色名角色名PUBLIC,9SYS用户用户10SYS用户用户11SYSTEM用户用户12系统权限回收REVOKE 系统权限名系统权限名 FROM用户名用户名角色名角色名PUBLIC,回收系统权限:回收系统权限:13实体权限管理14实体权限概述:使用实体权限限制用户对于实体的存取只有授予实体权限后,才允许用户对指定的表、视图、序列生成器或存储过程进行操作。实体权限的类型
4、随实体而不同。15实体权限分类: TABLE VIEW SEQUENCE PROCEDURE SNAPSHOTS ALTER DELETEEXECUTEINDEXINSERTREFERENCESSELECTUPDATE16实体权限命令:GRANT 权限名权限名 ON 实体名实体名 TO用户名用户名角色名角色名PUBLIC,17实体权限回收:REVOKE 特权特权 (列)(列)ON 对象对象 FROM用户名用户名角色名角色名PUBLIC,收回实体权限的级联反应:收回实体权限的级联反应:18角色管理19什什么是角色:么是角色:l角色是可以授予用户或其他角色的一组相关的权限组合。角色是可以授予用户或
5、其他角色的一组相关的权限组合。l使用角色可以简化权限管理。使用角色可以简化权限管理。20Oracle数据库角色管理数据库角色管理21角色管理(Role)角色中可以包含系统权限、实体权限。不被任何用户拥有,也不属于任何用户实体。可以用角色为用户授权。可以将角色授予其他角色。可以对于所授的用户生效或失效。可以要求使之生效的口令。&角色的描述被存储在数据字典中。角色的描述被存储在数据字典中。22为什么要使用角色?&简化权限管理1.用一条语句可以授予或回收许多权限。2.可以把角色授予用户,而不必对用户逐一授权。3.在多用户、多实体下简化权限管理。&实现权限动态管理1.随着应用的变化可以改变角色的权限。
6、2.通过改变角色,而改变多个用户权限。&权限可用性可以使权限失效或生效。23系统预定义角色系统预定义角色24系统预定义角色系统预定义角色25系系统统预预定定义义角角色色DBA26系系统统预预定定义义角角色色DBA27创建角色CREATEROLEroleIDENTIFIEDBYpasswordNOTIDENTIFIED28创建角色SQLcreateroletax_members;为角色授权:SQLgrantcreatesession,createtable,createviewtotax_members为用户授于角色:SQLgranttax_memberstotax01;29修改角色&修改角色可
7、以改变使角色生效的方式l指明授予用户的角色,不需要被ORACLE确认就生效。l指明授予用户的角色,必须经过ORACLE确认才生效。l指明使角色生效的口令。30修改角色ALTERROLEroleIDENTIFIEDBYpasswordNOTIDENTIFIED31修改角色SQLalterroletax_membersidentifiedbytax_members;Rolealtered.SQLalterrolemanagernotidentified;Rolealtered.32角色失效或生效&作用作用1. 使角色生效或失效可以使授予给用户的有关 权限有用或无用。2. 可以使以前授予的角色失效或
8、生效。3. 一个失效的角色对用户使无用的4. 可以要求有口令确认。33SETROLEroleIDENTIFIEDBYpasswordALLEXCEPTRoleNONE使角色失效或生效34SQLsetrolenone;Roleset.使角色失效或生效失效:35SQLsetroleconnect,tax_membersidentifiedbytax_members;Roleset.SQLsetroleallexcepttax_members;Roleset.SQLsetroleall;角色失效或生效 :生效36修改用户使角色失效或生效37修改用户使角色失效或生效SQLalterusertax01defaultrolenone;Useraltered.失效:38修改用户使角色失效或生效将用户将用户tax01的缺省角色全部生效:的缺省角色全部生效:SQLalterusertax01defaultroleall;除除tax_members角色外,其他角色设置为生效:角色外,其他角色设置为生效:SQLalterusertax01defaultroleallexcepttax_members;39