您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > Oracle数据库管理与应用实例教程-数据库安全
ORACLE数据库管理与应用实例教程本章学习导航本章学习导航本章学习要点(1)数据库安全概述。(2)数据库安全策略。(3)使用OEM进行用户管理。(4)使用PL/SQL进行用户管理。(5)使用OEM进行角色管理。(6)使用PL/SQL进行角色管理。(7)授权和撤消权限。(8)数据库审计。10.1数据库安全管理概述安全管理概述数据库的安全性是指保护数据库,防止非法操作所造成的数据泄露、篡改或损坏。在计算机系统中,安全性问题普遍存在,特别是当大量用户共享数据库中的数据时,安全问题尤其明显。保证数据库安全也成为DBA一项最重要的工作。10.1数据库安全管理概述安全管理概述在Oracle多用户数据库系统中,安全机制完成以下任务:防止未经授权的数据存取;防止未经授权的方案对象存取;控制磁盘使用;控制系统资源的使用;审计用户操作。数据库安全可以分为系统安全和数据安全。系统安全包括在系统级别上,控制数据库的存取和使用的机制。系统安全机制检查用户是否被授权连接到数据库,数据库审计是否是活动的,用户可以执行哪些系统操作等。数据安全包括在方案对象级别上,控制数据库的存取和使用的机制,如哪个用户可以存取指定的方案对象,在方案对象上允许每个用户采取的操作,每个方案对象的审计操作。10.2安全策略系统安全策略1.数据库用户管理数据库用户是存取数据库中信息的通道,必须对数据库用户进行严格的安全管理。既可以由安全管理员作为唯一有权限创建、修改和删除数据库用户的用户,也可以由多个有权限的管理员来管理数据库用户。2.用户验证为了防止数据库用户未经授权访问,Oracle提供主机操作系统、网络服务和数据库验证等方法对数据库用户实施验证。一般情况下,使用一种方法验证数据库中的所有用户,但也允许在同一数据库实例中使用多种验证方法。3.操作系统安全有时候可以为运行Oracle和数据库应用程序的操作系统环境考虑安全:DBA必须有创建和删除文件的操作系统权限;通常的数据库用户不应该有创建和删除文件的操作系统权限;若操作系统识别用户的数据库角色,则安全管理员必须拥有操作系统权限,以修改系统账户和安全域。10.2安全策略数据安全策略数据安全包括在对象级控制数据库访问和使用的机制,它决定了哪个用户访问特定方案对象,在对象上允许每个用户的特定类型操作,也可以定义审计每个方案对象的操作。为数据库中数据创建的安全等级决定数据安全策略。若要允许任何用户创建任何方案对象,或将对象的存取权限授予系统中的其他用户,数据库将缺乏安全保障。当希望仅有DBA或安全管理员有权限创建对象,并向角色和用户授权对象的存取权限时,必须完全控制数据安全。数据安全应该基于数据的机密程度。若信息是非机密的,数据安全策略可以不那样严密,否则数据安全策略应该严格控制对象的存取。10.2安全策略用户安全策略用户安全策略包括一般用户、最终用户、管理员、应用程序开发人员和应用程序管理员的安全策略。1.一般用户安全对于一般用户安全,主要考虑口令安全和权限管理问题。(1)口令安全(2)权限管理2.最终用户安全3.管理员安全由于SYSTEM和SYS用户拥有强大的权限,在创建数据库后,应该立即修改SYSTEM和SYS用户的口令4.应用程序开发人员安全5.应用程序管理员安全课堂案例1—用户管理掌握Oracle中应用OEM和PL/SQL创建用户、修改用户、删除用户的方法和基本步骤。案例学习目标OEM创建用户、OEM修改用户、OEM删除用户、PL/SQL创建用户、PL/SQL修改用户、PL/SQL删除用户。案例知识要点课堂案例1—用户管理案例完成步骤1.OEM创建用户(1)启动OEM后,单击“数据库实例”的“服务器”页面中“安全性”区域的“用户”链接,进入“用户”页面(2)单击“创建”按钮,进入“创建用户”页面。输入新用户名称、口令和确认口令。(3)单击“确定”按钮,成功创建用户。课堂案例1—用户管理案例完成步骤1.PL/SQL创建用户【例1-1】创建用户LIUZC,执行数据库验证方式。CREATEUSERLIUZCIDENTIFIEDBY123456;【例1-2】创建用户WANGYM,执行操作系统验证方式。CREATEUSERWANGYMIDENTIFIEDEXTERNALLYDEFAULTTABLESPACEUSERSTEMPORARYTABLESPACETEMP;课堂案例1—用户管理案例完成步骤2.OEM修改用户(1)在“用户”页面中,选择需要修改的用户,单击“编辑”按钮,进入“编辑用户”页。(2)在“编辑用户”页面中修改用户的信息,如口令、默认表空间、临时表空间、权限和状态等,单击“应用”按钮完成用户修改操作。课堂案例1—用户管理案例完成步骤2.PL/SQL修改用户【例1-3】修改用户LIUZC的密码为LIUZC888,并锁定该用户。ALTERUSERLIUZCIDENTIFIEDBYLIUZC888ACCOUNTLOCK;课堂案例1—用户管理案例完成步骤3.OEM删除用户进入OEM后,进入“用户”页面,选择需要删除的用户,单击“删除”按钮,进入“确认删除”页面。再单击“是”按钮即可完成删除用户的操作。3.PL/SQL删除用户【例1-4】删除用户LIUZC及其方案中包含的全部对象。DROPUSERLIUJINCASCADE;课堂案例1—用户管理案例完成步骤4.监控用户【例1-5】查看当前数据库中所有LIU开始的用户的详细信息并按用户名降序排列。SELECT*FROMALL_USERSWHEREUSERNAMELIKE'%LIU%'ORDERBYUSERNAMEDESC;课堂案例2—角色管理掌握Oracle中应用OEM和PL/SQL创建角色、修改角色、删除角色、启用/禁用角色的方法和基本步骤。案例学习目标OEM创建角色、OEM修改角色、OEM删除角色、PL/SQL创建角色、PL/SQL修改角色、PL/SQL删除角色、PL/SQL启用/禁用角色。案例知识要点课堂案例2—角色管理角色概述角色(Role)是具有名称的一组相关权限的组合,即将不同的权限集合在一起就形成了角色。(1)减少权限的授予DBA可以将一组相关的用户权限授予某个角色,再将角色授予该组中每个成员,从而不再需要单独为每个用户授予同一批权限。(2)动态权限管理在一组权限需要修改时,只需要修改角色的权限即可,被授予该组角色的所有用户的安全域自动反映该角色的修改。(3)选择权限的可用性授予用户的角色既可以使之可用,也可以使之不能使用,这就允许在一些特定场合中特殊控制用户的权限。(4)应用程序角色数据库应用程序可以设计为在用户试图使用该程序时自动使用或不自动使用选择的角色。在Oracle中进行角色(主要是用户自定义角色)管理主要包括创建角色、修改角色和删除角色等操作。课堂案例2—角色管理案例完成步骤1.OEM创建角色(1)使用SYS或SYSTEM用户账户进入OEM,单击OEM中“数据库实例”的“服务器”页中“安全性”区域的“角色”链接,进入“角色”页面。(2)单击“创建”按钮,进入“创建角色”页面。输入新角色名称(如:super),并选择验证方式。(3)单击“确定”按钮,成功创建角色后将进入“创建角色确认”页面。课堂案例2—角色管理案例完成步骤1.PL/SQL创建角色【例2-1】创建角色GENERAL,由数据库使用口令来验证。CREATEROLEGENERALIDENTIFIEDBY123456;可以通过数据字典DBA_ROLES查看角色的情况:SELECT*FROMDBA_ROLES;课堂案例2—角色管理案例完成步骤2.OEM修改角色(1)在“角色”页面,选择需要修改的角色,单击“编辑”按钮,进入“编辑角色”页面。(2)在“编辑角色”页面中修改角色的信息,如验证类型,单击“应用”按钮完成角色修改操作。课堂案例2—角色管理案例完成步骤2.PL/SQL修改角色【例2-2】修改角色GENERAL,设置不需要口令就可以使用该角色。ALTERROLEGENERALNOTIDENTIFIED;课堂案例2—角色管理案例完成步骤3.OEM删除角色进入OEM后,在“角色”页面,选择需要删除的角色,单击“删除”按钮,进入“确认删除”页面。再单击“是”按钮,即可完成删除角色的操作。3.PL/SQL删除角色【例2-3】删除角色GENERAL。DROPROLEGENERAL;课堂案例2—角色管理案例完成步骤4.启用/禁用角色【例2-4】为GENERAL角色设置密码720518SETROLEGENERALidentifiedby720518;【例2-5】为用户LIUZC授予角色CONNECT、RESOURCE、BA和GENERAL角色后,禁用该用户的所有角色。GRANTCONNECT,RESOURCE,DBA,GENERALTOLIUZC;以LIUZC用户登录系统后,使用以下PL/SQL语句禁用该用户的所有角色:SETROLENONE;如果要启用该用户的CONNECT角色,可以使用以下PL/SQL语句启用CONNECT角色:SETROLECONNECT;课堂案例2—角色管理案例完成步骤4.启用/禁用角色角色启用/禁用后,可以查询数据字典视图SESSION_ROLES查看用户的角色情况:SELECT*FROMSESSION_ROLES;课堂案例2—角色管理案例完成步骤4.启用/禁用角色用户所属角色也可以在修改用户的时候进行启用或禁用。【例2-6】修改用户LIUZC,为其设置默认角色为CONNECT。ALTERUSERLIUZCDEFAULTROLECONNECT;【例2-7】修改用户LIUZC,禁用该用户的所有角色。ALTERUSERLIUZCDEFAULTROLENONE;【例2-8】修改用户LIUZC,启用该用户的GENERAL角色之外的所有角色。ALTERUSERLIUZCDEFAULTROLEALLEXCEPTGENERAL;课堂案例2—角色管理预定义角色Oracle系统的预定义角色是在安装数据库后,由系统自动创建的一些角色,这些角色已经由系统授予了相应的权限。课堂案例3—权限管理掌握Oracle中应用OEM和PL/SQL授予系统权限、授予对象权限、回收系统权限、回收对象权限的方法和一般步骤。案例学习目标OEM授予系统权限、OEM授予对象权限、OEM回收系统权限、OEM回收对象权限、PL/SQL授予系统权限、PL/SQL授予对象权限、PL/SQL回收系统权限、PL/SQL回收对象权限。案例知识要点课堂案例3—权限管理权限概述Oracle系统使用其授权机制,来实现用户对数据库及其对象的存取控制和安全保证。用户必须被授予权限才能在数据库中执行对应的操作。权限(Privilege)是允许用户对数据库进行数据库操作的权力。权限可以分为系统权限和对象权限两类。系统权限允许用户创建、修改和删除各种数据库结构,而对象权限则允许用户对特定对象执行操作。Oracle数据库中通常存在两大类用户:一类是创建和管理数据库结构和对象的用户,另一类是需要使用现有对象的应用程序用户。前者需要系统权限,后者需要对象权限。DBA可以把权限授予用户,也可以从用户手中收回权限。使用角色则将多个系统和对象的权限合并在一起,可以将角色授予用户,从而简化权限的管理。课堂案例3—权限管理案例完成步骤—授予权限1.使用OEM授予权限(1)进入“编辑角色”的“系统权限”页面。在“编辑角色”的“系统权限”页面中显示了当前角色的系统权限。(2)单击“编辑列表”按钮,进入“角色”的“修改系统权限”页面。(3)也可以通过OEM为角色或用户设置对象权限,步骤同系统权限。课堂案例3—权限管理案例完成步骤—授予权限2.使用PL/SQL授予权限GRANT授予系统权限的基本语法格式为:GRANT{系统权限|角色}[,…]TO{用户|角色|PUBLIC}[,…][WITHADMINOPTION];授予对象权限的基本语法格式为:GRANT{对象权限|ALL[PRIVILEGES]}[(列[,…])][,…]ON[用
本文标题:Oracle数据库管理与应用实例教程-数据库安全
链接地址:https://www.777doc.com/doc-3612441 .html