第12章Oracle资料学习.ppt_第1页
第12章Oracle资料学习.ppt_第2页
第12章Oracle资料学习.ppt_第3页
第12章Oracle资料学习.ppt_第4页
第12章Oracle资料学习.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2,第12章用户权限与安全,本章要点:掌握用户的创建与管理。了解用户配置文件的作用。掌握如何使用用户配置文件限制用户使用的资源。了解Oracle中的权限。理解系统权限与对象权限的区别。了解角色与权限的区别。掌握角色的创建与管理。掌握如何为角色授予权限。掌握如何为用户授予权限或角色。,3,12.1用户,连接数据库需要拥有用户名,并在连接时提供密码。在实际应用中,数据库的用户一般较多,所以数据库管理员应该对用户可以使用的系统资源加以限制,这需要为用户创建并指定配置文件。,4,12.1.1创建用户,创建用户需要使用CREATEUSER语句,其语法如下:CREATEUSERuser_nameIDENTIFIEDBYpasswordDEFAULTTABLESPACEdefault_tablespace_nameTEMPORARYTABLESPACEtomporary_tablespace_nameQUOTAquotaK|M|UNLIMITEDONtablespace_name,.PROFILEprofile_namePASSWORDEXPIREACCOUNTLOCK|UNLOCK;,5,12.1.1创建用户,【例12.1】创建用户需要具有CREATEUSER权限,下面使用Oracle特权用户system连接数据库,并创建用户xiaoqi,语句如下:SQLCONNECTsystem/admin已连接。SQLCREATEUSERxiaoqi2IDENTIFIEDBYxiaoqi01013DEFAULTTABLESPACEusers4TEMPORARYTABLESPACEtemp5QUOTA20MONusers;用户已创建。,6,12.1.2修改用户,对创建好的用户可以使用ALTERUSER语句进行修改,修改时可以针对用户不同的参数。例如修改用户的口令,语句形式如下:ALTERUSERuser_nameIDENTIFIEDBYnew_password;1修改用户口令为过期在创建用户时可以使用PASSWORDEXPIRE子句将用户口令的初始状态设置为过期,对于已创建好的用户也可以使用ALTERUSER语句进行设置,语句形式如下:ALTERUSERuser_namePASSWORDEXPIRE;如果用户口令是过期状态,则使用该用户连接数据库时,Oracle将强制用户更新口令。,7,12.1.2修改用户,2修改用户的状态为锁定或解锁修改用户状态的ALTERUSER语句形式如下:ALTERUSERuser_nameACCOUNTLOCK|UNLOCK;【例12.3】在system用户模式下修改xiaoqi用户的状态为LOCK状态,然后使用xiaoqi连接数据库,如下:SQLALTERUSERxiaoqiACCOUNTLOCK;用户已更改。SQLCONNECTxiaoqi/xiaoqi0101;ERROR:ORA-28000:theaccountislocked,8,12.1.3删除用户,删除用户需要使用DROPUSER语句。如果该用户已经在数据库中创建了内容,则必须指定CASCADE关键字,表示在删除该用户的同时,删除该用户创建的所有内容。其语法如下:DROPUSERuser_nameCASCADE;,9,12.1.4管理用户会话,1监视用户会话信息Oracle提供了动态视图v$session,通过该视图可以了解当前数据库中的用户会话信息。【例12.4】查询动态视图v$session中的部分信息,如下:参见教材P267【例12.5】查询system用户连接数据库后最新执行的SQL语句,如下:参见教材P267,10,12.1.4管理用户会话,2终止用户会话数据库管理员可以在需要的时候使用ALTERSYSTEM语句终止用户的会话,其语法形式如下:ALTERSYSTEMKILLSESSIONsid,serial#;其中,sid与serial#的值可以通过查询动态视图v$session获得。【例12.6】终止sid为136,serial#为341的会话,语句如下:ALTERSYSTEMKILLSESSION136,341;,11,12.2用户配置文件,为了限制数据库用户对数据库系统资源的使用,在安装数据库时,Oracle自动创建了名为DEFAULT的资源配置文件,如果在创建用户时没有为用户指定配置文件,则Oracle会为该用户指定配置文件为DEFAULT。,12,12.2.1创建用户配置文件,系统管理员也可以自行创建配置文件。创建配置文件需要使用CREATEPROFILE语句,其语法如下:参见教材P268【例12.7】使用DBA身份创建用户配置文件user_profile,对该文件的说明如下。(1)限制用户允许拥有的会话数为1,对应的参数为SESSIONS_PER_USER。(2)限制该用户执行的每条SQL语句可以占用的CPU总时间为百分之五秒,对应的参数为CPU_PER_CALL。(3)限制该用户的空闲时间为10分钟,对应的参数为IDLE_TIME。(4)限制用户登录数据库时可以失败的次数为3次,对应的参数为FAILED_LOGIN_ATTEMPTS。(5)限制口令的有效时间为10天,对应的参数为PASSWORD_LIFE_TIME。(6)设置用户登录失败次数达到限制要求时,用户被锁定的天数为3天,对应的参数为PASSWORD_LOCK_TIME。(7)设置口令使用时间达到有效时间之后,口令仍然可以使用的“宽限时间”为3天,对应的参数为PASSWORD_GRACE_TIME。,13,12.2.2使用配置文件,【例12.8】修改用户xiaoqi的配置文件为user_profile,如下:SQLALTERUSERxiaoqiPROFILEuser_profile;用户已更改。除此之外,要想让配置文件生效,还需要修改参数resource_limit的值,其值默认为FALSE,需要将其值修改为TRUE。【例12.9】使用SHOWPARAMETER语句查看参数resource_limit的默认值,如下:SQLSHOWPARAMETERresource_limit;NAMETYPEVALUE-resource_limitbooleanFALSE使用ALTERSYSTEM语句修改该参数的值为TRUE,如下:SQLALTERSYSTEMSETresource_limit=TRUE;系统已更改。,14,12.2.3查看配置文件信息,通过数据字典dba_profiles,可以查看系统默认配置文件DEFAULT和自行创建的用户配置文件的参数设置。【例12.10】这里以查看系统默认配置文件DEFAULT的参数设置为例,让读者了解参数的默认值,如下:参见教材P270其中,profile表示配置文件名;resource_name表示参数名;limit表示参数值。,15,12.3权限,一个新的用户被创建后,该用户还无法操作数据库,还需要为该用户授予相关的权限。权限是指在数据库中执行某种操作的权力,例如连接数据库、在数据库中创建与操作数据库对象等权限。Oracle中的权限主要分为系统权限与对象权限。,16,12.3.1系统权限,系统权限是指对整个Oracle系统的操作权限,例如连接数据库、创建与管理表或视图等。系统权限一般由数据库管理员授予用户,并允许用户将被授予的系统权限再授予其他用户。1Oracle中的系统权限通过数据字典system_privilege_map可以查看Oracle中的系统权限,其中常用的系统权限如表12-1所示。参见教材P272,17,12.3.1系统权限,2授予系统权限向用户授予系统权限需要使用GRANT语句,其语法如下:GRANTsystem_privilege,.TOuser_name,.|role_name,.|PUBLICWITHADMINOPTION;3查看用户的系统权限数据字典user_sys_privs有如下3个字段。username:当前用户的用户名。privilege:当前用户拥有的系统权限。admin_option:当前用户是否有权力将该权限授予其他用户。其值为YES表示有,为NO表示没有。,18,12.3.1系统权限,4撤消权限撤消用户的权限需要使用REVOKE语句,其语法如下:REVOKEsystem_privilege,.FROMuser_name,.|role_name,.|PUBLIC;,19,12.3.1系统权限,【例12.14】使用system用户撤消xiaoqi用户的CREATESESSION权限,如下:SQLCONNECTsystem/admin已连接。SQLREVOKECREATESESSIONFROMxiaoqi;撤消成功。此时,xiaoqi用户不再具有连接到数据库的权限,但candy用户还具有此权限,如下:SQLCONNECTxiaoqi/xiaoqi0101ERROR:ORA-01045:userXIAOQIlacksCREATESESSIONprivilege;logondenied警告:您不再连接到ORACLE。SQLCONNECTcandy/candy0101已连接。,20,12.3.2对象权限,对象权限是指用户对数据库中对象的操作权限,例如对某一个表的插入、修改和删除记录等权限。Oracle中的常见对象与其对象权限之间的对应关系如表12-2所示,其中表示该对象上具有该权限。参见教材P275,21,12.3.2对象权限,1授予对象权限授予对象权限同样需要使用GRANT语句,其语法如下:GRANTobject_privilege,.|ALLPRIVILEGESONobject_nameTOuser_name,.|role_name,.|PUBLICWITHGRANTOPTION;2撤消对象权限撤消对象权限也需要使用REVOKE语句,其语法如下:REVOKEobject_privilege,.|ALLPRIVILEGESONobject_nameFROMusername,.|role_name,.|PUBLIC;,22,12.3.2对象权限,3列对象上的权限如果是将列对象上的权限授予某个用户,则需要在表或视图的对象权限后面指定列名,其形式如下:object_privilege(column_name,.)4与对象权限相关的数据字典Oracle主要提供了4个与对象权限相关的数据字典,如表12-3所示。参见教材P278,23,12.4角色,数据库中的权限较多,为了方便对用户权限的管理,Oracle数据库允许将一组相关的权限授予某个角色,然后将这个角色授予需要的用户,拥有该角色的用户将拥有该角色包含的所有权限。,24,12.4.1创建角色,创建角色需要使用CREATEROLE语句,并要求用户具有CREATEROLE权限。CREATEROLE语句的语法如下:CREATEROLErole_nameNOTIDENTIFIED|IDENTIFIEDBYpassword;语法说明如下。role_name:创建的角色名。NOTIDENTIFIED|IDENTIFIEDBYpassword:可以为角色设置口令。默认为NOTIDENTIFIED,即无口令。,25,12.4.2为角色授予权限,新创建的角色还不具有任何权限,可以使用GRANT语句向该角色授予权限,其语法形式与向用户授予权限基本相同,具体语法已经在12.3节中介绍,这里不赘述。【例12.20】向角色emp_manager授予scott.emp表上的SELECT、UPDATE、INSERT和DELETE对象权限,如下:SQLCONNECTscott/tiger已连接。SQLGRANTSELECT,UPDATE,INSERT,DELETE2ONempTOemp_manager;授权成功。,26,12.4.3为用户授予角色,为用户授予角色,同样是使用GRANT语句。【例12.21】创建用户emp_user,并为该用户授予emp_manager角色,以及连接数据库所必需的CREATESESSION权限,如下:参见教材P280【例12.22】使用emp_user用户连接数据库,并使用SELECT语句查询scott.emp中的数据,如下:参见教材P280,27,12.4.4修改用户的默认角色,修改用户的默认角色时需要使用ALTERUSER语句,其语法形式如下:ALTERUSERuser_nameDEFAULTROLErole_name,.|ALLEXCEPTrole_name,.|NONE;语法说明如下。role_name:角色名。ALL:将用户的所有角色设置为默认角色。EXCEPT:将用户的除某些角色以外的所有角色设置为默认角色。NONE:将用户的所有角色都设置为非默认角色。,28,12.4.5管理角色,对角色的管理主要包括设置角色的口令、为角色添加或减少权限、禁用与启用角色、删除角色。1设置角色的口令使用ALTERUSER语句可以重新设置角色的口令,包括删除口令、添加口令和修改口令,其语法形式如下:ALTERROLErole_nameNOTIDENTIFIED|IDENTIFIEDBYnew_password;2禁用与启用角色禁用与启用角色需要使用SETROLE语句,其语法如下:SETROLErole_nameIDENTIFIEDBYpassword,.|ALLEXCEPTrole_name,.|NONE;,29,12.4.5管理角色,3删除角色删除角色需要使用DROPROLE语句,其语法形式如下:DROPROLErole_name;,30,12.4.6与角色相关的数据字典,如果要了解用户拥有哪些角色,以及角色中包含哪些权限,可以查看如表12-4所示的数据字典视图。,31,12.4.6与角色相关的数据字典

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论