您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 计算机必学oracle数据库第06章
Oracle10g数据库应用教程授课教师:职务:第6章数据库安全管理课程描述介绍Oracle数据库的认证方法、用户管理、权限管理和角色管理本章知识点Oracle认证方法用户管理角色管理6.1Oracle认证方法操作系统身份认证网络身份认证Oracle数据库身份认证数据库管理员认证操作系统身份认证例:通过操作系统认证的用户可以通过下面的命令启动SQL*Plus,而不需要输入用户名和密码:SQLPLUS/网络身份认证网络层的认证能力由第3方的SSL协议处理。SSL是SecureSocketLayer的缩写,即安全套接字层。它是一个应用层协议,可以用于数据库的用户身份认证。网络层身份认证使用第3方网络认证服务,例如DCE、Kerberos、PKI、RADIUS等。Oracle数据库身份认证连接中的密码加密:加密算法采用改进的DES和3DES算法,加密过程在数据传输之前完成。账户锁定:Oracle可以设置连接登录失败n次后,Oracle将锁定用户账户。密码生存周期检测历史密码验证密码复杂度数据库管理员认证数据库管理员的认证方式是否建立安全连接管理远程数据库是否使用操作系统认证管理本地数据库是是否否使用操作系统认证使用密码文件认证数据库管理员认证在SQL*Plus中,如果采用操作系统认证方式登录,可以使用如下命令:CONNECT/ASSYSDBA或者:CONNECT/ASSYSOPER【例】创建密码文件myPwdFile.ora,SYS用户的密码为syspwd,SYSDBA和SYSOPER用户的最大数量为50,代码如下:ORAPWDFILE=myPwdFile.oraPASSWORD=syspwdENTRIES=50数据库管理员认证初始化参数REMOTE_LOGIN_PASSWORDFILE可以指定密码文件的使用方法,它可以设置为如下3种值:•NONE。Oracle数据库认定密码文件不存在,所有的连接都必须是安全连接。•EXCLUSIVE(默认值)。可以添加、修改和删除用户,也可以修改SYS用户的密码。•SHARED。共享的密码文件不允许被修改,因此不允许添加新用户,也不能修改SYS或其他SYSDBA、SYSOPER用户的密码。数据库管理员认证GRANT命令为用户授予权限。【例】向用户adm授予SYSDBA权限:GRANTSYSDBATOadm;REVOKE命令撤销用户的授权。【例】撤销用户adm的SYSDBA权限:REVOKESYSDBAFROMadm;数据库管理员认证通过视图V$PWFILE_USERS查看密码文件的内容。【例】使用SQL语句查看代码文件的内容:SQLSELECT*FROMV$PWFILE_USERS;USERNAMESYSDBSYSOP-------------------------------SYSTRUETRUE用户管理创建用户修改用户权限管理语句删除用户创建用户显示用户信息操作按钮创建用户“创建用户”页面选择表空间创建用户查看新建用户NEWUSER的信息创建用户CREATEUSER语句在数据库中创建新用户。CREATEUSER用户名IDENTIFIEDBY口令DEFAULTTABLESPACE默认表空间TEMPORARYTABLESPACE临时表空间;【例】创建管理用户USERMAN:CREATEUSERUSERMANIDENTIFIEDBYUSERMAN;修改用户编辑用户页面设置用户的其他属性修改用户ALTERUSER语句也可以修改用户信息。(1)修改密码密码。【例】将用户USERMAN的密码修改为NewPassword:ALTERUSERUSERMANIDENTIFIEDBYNewPassword;(2)PASSWORDEXPIRE关键词设置密码过期。【例】设置用户USERMAN的密码立即过期,它在下一次登录时必须修改密码:ALTERUSERUSERMANPASSWORDEXPIRE;(3)ACCOUNTLOCK关键词锁定用户。【例】锁定用户USERMAN,使其无法登录到数据库:ALTERUSERUSERMANACCOUNTLOCK;(4)ACCOUNTUNLOCK关键词解锁用户。【例】解除对用户USERMAN的锁定:ALTERUSERUSERMANACCOUNTUNLOCK;权限管理语句系统权限设置页面权限管理语句修改系统权限页面权限管理语句GRANT语句可以将权限授予指定的用户或角色。(1)授予系统权限:GRANT系统权限TO用户名【例】对于用户USERMAN授予SYSDBA权限:GRANTSYSDBATOUSERMAN;(2)授予数据对象权限:GRANT数据对象权限ON数据对象TO用户名【例】对用户USERMAN授予表USERS的SELECT、INSERT、UPDATE、DELETE权限:GRANTSELECTONUSERMAN.USERSTOUSERMAN;GRANTINSERTONUSERMAN.USERSTOUSERMAN;GRANTUPDATEONUSERMAN.USERSTOUSERMAN;GRANTDELETEONUSERMAN.USERSTOUSERMAN;权限管理语句(3)REVOKE语句可以撤销用户的角色或权限:REVOKE权限或角色FROM用户名【例】撤销用户USERMAN的系统权限:REVOKESYSDBAFROMUSERMAN;删除用户确认删除页面撤销表空间DROPUSER语句也可以删除指定的用户。【例】删除用户USERMAN:DROPUSERUSERMAN;6.3角色管理Oracle系统角色创建角色对角色授权指定用户的角色修改角色删除角色Oracle系统角色常用的Oracle预定义系统角色角色名说明CONNECT授予最终用户的基本角色,主要包括ALTERSESSION(修改会话)、CREATECLUSTER(建立聚簇)、CREATEDATABASELINK(建立数据库链接)、CREATESEQUENCE(建立序列)、CREATESESSION(建立会话)、CREATESYNONYM(建立同义词)、CREATEVIEW(建立视图)等权限RESOURCE授予开发人员的基本角色,主要包括CREATECLUSTER(创建聚簇)、CREATEPROCEDURE(创建过程)、CREATESEQUENCE(创建序列)、CREATETABLE(创建表)、CREATETRIGGER(创建触发器)、CREATETYPE(创建类型)等权限DBA拥有所有系统级管理权限IMP_FULL_DATABASE和EXP_FULL_DATABASE导入、导出数据库所需要的角色,主要包括BACKUPANYTABLE(备份表)、EXECUTEANYPROCEDURE(执行过程)、SELECTANYTABLE(查询表)等权限DELETE_CATALOG_ROLE删除sys.aud$记录的权限,sys.aud$表中记录着审计后的记录SELECT_CATALOG_ROLE具有从数据字典查询的权限EXECUTE_CATALOG_ROLE具有从数据字典中执行部分过程和函数的权限创建角色显示角色信息创建角色创建角色页面授予角色系统权限创建角色查看角色MYROLL的信息创建角色【例】使用CREATEROLE语句创建角色:CREATEROLEMYROLEIDENTIFIEDBYmyrollpwdIDENTIFIEDBY子句可以指定角色的密码。对角色授权系统权限设置页面对角色授权修改系统权限页面指定用户的角色GRANT命令为用户指定角色。【例】将角色CONNECT指定给用户USERMAN:GRANTCONNECTTOUSERMAN;REVOKE命令为取消用户的角色。【例】撤销USERMAN用户的CONNECT角色:REVOKECONNECTFROMUSERMAN;修改角色ALTERROLE语句修改角色。【例】取消角色MYROLL的密码验证:ALTERROLEMYROLENOTIDENTIFIED;删除角色确认删除页面删除角色DROPROLE语句可以删除指定的角色。【例】删除用户MYROLE:DROPROLEMYROLE;
本文标题:计算机必学oracle数据库第06章
链接地址:https://www.777doc.com/doc-14549 .html