《安全性管理》课件.ppt

上传人:牧羊曲112 文档编号:5022770 上传时间:2023-05-30 格式:PPT 页数:52 大小:302.99KB
返回 下载 相关 举报
《安全性管理》课件.ppt_第1页
第1页 / 共52页
《安全性管理》课件.ppt_第2页
第2页 / 共52页
《安全性管理》课件.ppt_第3页
第3页 / 共52页
《安全性管理》课件.ppt_第4页
第4页 / 共52页
《安全性管理》课件.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《《安全性管理》课件.ppt》由会员分享,可在线阅读,更多相关《《安全性管理》课件.ppt(52页珍藏版)》请在三一办公上搜索。

1、第1页,Oracle 11g数据库应用教程,第2页,第13章 安全性管理,本章概述 本章的学习目标主要内容,第3页,本章概述,安全性是衡量数据库产品性能的重要指标。本章介绍Oracle 11g数据库的安全管理机制,内容包括用户管理,权限管理,角色管理,数据库审计等。,第4页,本章的学习目标:了解用户、权限、角色的概念及作用 学会创建、修改、删除用户 学会将系统权限和对象权限授予用户,以及回收权限 学会使用系统预定义角色,学会创建自定义角色,以及角色权限的授予和回收 了解数据库审计的概念及作用,第5页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审

2、计13.6小结13.7习题,第6页,安全性在数据库管理中占据重要的位置,没有完善的安全机制的保护,可能会导致数据的泄露、损坏或丢失,因此安全性一直是数据库产品性能的重要衡量指标之一。Oracle数据库的安全管理是从用户登录数据库就开始的。数据库访问的安全性主要包括两个方面的含义:一是阻止未授权用户访问数据库;二是每个数据库用户都有不同的操作权限,用户在数据库中的操作将被限制在其权限范围内。,在Oracle数据库中,用户的身份通常被划分为数据库管理员和开发人员,其中数据库管理员承担管理数据库的责任,包括安全性管理、调优、备份策略的制定、数据库出现故障时的数据恢复、保证数据库的可用性等。软件系统的

3、开发人员作为数据库管理员之外的一类使用者,承担软件开发的职责,对数据库的访问要求及技能掌握要求比数据库管理员低,他们需要熟练掌握的SQL及PL/SQL的操作技能,能够快速及高效率地完成对数据库的操作需求,对调优和备份恢复等操作通常不参与。所以,数据库的安全管理通常属于数据库管理员的职责,DBA可以通过管理用户、角色以及权限来控制数据库的安全。但对于软件开发人员来说,掌握一些安全机制及处理方式也是有必要的。,第7页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审计13.6小结13.7习题,第8页,13.2 用户管理,用户是数据库的使用者和管理者,用

4、户管理是Oracle数据库安全管理的核心和基础。每个连接到数据库的用户都必须是系统的合法用户,用户要想使用Oracle的系统资源(查询数据、创建表等),就必须要拥有相应的权限。Oracle数据库的用户管理包括创建用户、修改用户的安全参数、删除用户和查询用户信息等。,第9页,13.2.1 初始用户 在创建Oracle数据库时会自动创建一些用户,例如SYS、SYSTEM、SCOTT等,除了SYS、SYSTEM这两个初始合法的管理员,其余用户在创建后处于锁定状态,需要在安装时或者安装后对其解锁并重新设定口令。这些初始用户有其自身的职责和特点,软件项目一般不建议使用这些初始用户。即针对不同的项目,应该

5、由管理员分配不同的用户,在开发过程中,SCOTT用户可以用来测试数据库的可用性。l SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典。l SYSTEM:是辅助数据库管理员,不能启动和关闭数据库,可以进行一些其他的管理工作,例如创建用户、删除用户等。l SCOTT:数据库的测试用户,默认口令为tiger。在该用户下已经创建了一些数据表,用于用户学习及测试网络连接,包括:EMP表、DEPT表等。,第10页,13.2.2 相关属性,和用户相关的属性包括以下几种。(1)用户身份认证方式在用户连接数据库时,必须经过身份认证。Oracle数据库用户有3种身份认证。数据

6、库身份认证:这种方式即用户名/口令方式,用户口令以加密方式保存在数据库内部,用户连接数据库时必须输入用户名和口令,通过数据库认证后才能登录数据库。这是默认的认证方式。外部身份认证:用户账户由Oracle数据库管理,但口令管理和身份验证由外部服务完成,外部服务可以是操作系统或网络服务。当用户试图建立与数据库的连接时,数据库不会要求用户输入用户名和口令,而从外部服务中获取当前用户的登录信息。这种方式比较适合在局域网环境下,连接简单,不需要提供用户名和口令,但是需要在创建用户时做一些相应的配置。,第11页,全局身份认证:当用户试图建立与数据库的连接时,Oracle使用网络中的安全管理服务器(Orac

7、le Enterprise Security Manager)对用户进行身份认证。和外部身份认证相同,用户账户由数据库管理,但Oracle不保存口令,当用户登录时,需要通过网络服务验证。Oracle的安全管理服务器可以提供全局范围内管理数据库用户的功能。,(2)表空间配额表空间配额限制用户在永久表空间中可用的存储空间大小,默认情况下,新用户在任何表空间中都没有任何配额。用户在临时表空间中不需要配额。(3)默认表空间用户在创建数据库对象时,如果没有显示指明该对象在哪个空间,那么系统会将该对象自动存储在用户的默认表空间中,即SYSTEM表空间。一般不建议将用户的对象建立在SYSTEM表空间中,所以

8、默认表空间应指定。,第12页,(4)临时表空间 如果用户执行一些操作例如排序、汇总和表间连接等,系统会首先使用内存中的排序区SORT_AREA_SIZE,如果这块排序区大小不够,则将使用用户的临时表空间。一般使用系统默认临时表空间TEMP作为用户的默认临时表空间。(5)账户状态 在创建用户时,可以设定用户的初始状态,包括用户口令是否过期、用户账户是否锁定等。已锁定的用户不能访问数据库,必须由管理员进行解锁后才允许访问。数据库管理员可以随时锁定账户或解除锁定。(6)资源配置 每个用户都有一个资源配置,如果创建用户时没有指定,Oracle会为用户指定默认的资源配置。资源配置的作用是对数据库系统资源

9、的使用加以限制,这些资源包括:口令是否过期,口令输入错误几次后锁定该用户,CPU时间,输入/输出(I/O)以及用户打开的会话数目等。,第13页,13.2.3 创建用户创建数据库用户的语法如下:CREATE USER userIDENTIFIED BY passwore|EXTERNALLYDEFAULT TABLESPACE tablespace TEMPORARY TABLESPACE tablespaceQUOTA integer K|M|UNLIMITED ON tablespaceQUOTA integer K|M|UNLIMITED ON tablespacePASSWORD EXP

10、IREACCOUNT LOCK|UNLOCKPROFILE profile|DEFAULT,第14页,参数说明:user:要创建的用户名;BY password:用户通过数据库验证方式登录,登录时需要提供的口令;EXTERNALLY:用户需要通过操作系统验证;DEFAULT或TEMPORARY TABLESPACE:为用户指定默认或临时表空间;QUOTA:定义在表空间中允许用户使用的最大空间,可将限额定义为整数字节或千字节/兆字节。其中关键字UNLIMITED用户指定用户可以使用表空间中全部可用空间;PASSWORD EXPIRE:强制用户在使用SQL*Plus登录到数据库时重置口令(该选项仅

11、在用户通过数据库进行验证时有效);ACCOUNT LOCK|UNLOCK:可用于显示锁定或解除锁定用户账户(UNLOCK为缺省设置);PROFILE:指定用户的资源配置。,第15页,【例13-1】创建用户rose,口令为zzuli,默认表空间为USERS,在该表空间的配额为50MB。口令设置为过期状态,即首次连接数据库时需要修改口令。(如果在SQL Plus中创建用户成功,最后会显示个 用户已创建。之类的,最好写在例题下面,表示这是运行成功的代码,你实验一下,看看创建完结果是什么,写到下面。后面的例题都是这样的吧)SQLCREATE USER rose IDENTIFIED BY zzuli2

12、 DEFAULT TABLESPACE USERS3 QUOTA 50M ON USERS4 PASSWORD EXPIRE;用户已创建。,第16页,13.2.4 修改用户,用户创建后,可以更改用户的属性,如口令、默认表空间、临时表空间、表空间配额、概要文件和用户状态等。但不允许修改用户的名称,除非将其删除。修改数据库用户使用ALTER USER语句来实现,ALTER USER语句的语法格式为:ALTER USER user_name IDENTIFIEDBY PASSWORD|EXTERNALLY|GOLBALLY AS external_nameDEFAULT TABLESPACE tab

13、lespace_nameTEMPORARY TABLESPACE temp_tempspace_nameQUOTA n K|M|UNLIMITED ON tablespace_namePROFILE profile_nameDEFAULT ROLE role_list|ALL EXCEPT role_list|NONEPASSWORD EXPIREACCOUNT LOCK|UNLOCK;,第17页,对其中的参数说明如下。l role_list:角色列表l ALL:表示所有角色l EXCEPT role_list:表示除了role_list列表中角色以外的其他角色。l NONE:表示没有默认角色

14、。【例13-2】修改用户atea的默认表空间为USERS,在该表空间的配额为100MB,在USERS表空间的配额为30MB。命令如下:SQLALTER USER atea2 DEFAULT TABLESPACE USERS3 QUOTA 30M ON USERS;,第18页,13.2.5 删除用户,当一个用户不再使用时,可以将其删除。删除用户的语法:DROP USER user_name CASCADE执行该语句的用户必须具有DROP USER的系统权限。删除用户时需要注意如下几点:(1)如果用户方案中包括任何对象,在删除用户时,必须加上CASCADE短语,Oracle数据库会先删除该用户的所

15、有对象,然后再删除该用户。(2)如果用户当前正与Oracle服务器连接,则不能删除。【例13-3】删除用户atea。SQLDROP USER atea;-如果atea用户的方案中没有对象 SQLDROP USER atea CASCADE;-如果atea用户的方案中有对象,第19页,13.2.6 查询用户信息,如果要获取用户信息,可以通过查询数据字典视图或动态性能视图来实现。ALL_USERS:包含数据库所有用户的用户名、用户ID和用户创建时间。DBA_USERS:包含数据库所有用户的详细信息。USER_USERS:包含当前用户的详细信息。DBA_TS_QUOTAS:包含所有用户的表空间配额信

16、息。USER_TS_QUOTAS:包含当前用户的表空间配额信息。V$SESSION:包含用户会话信息。V$OPEN_CURSOR:包含用户执行的SQL语句信息。【例13-4】查找所有用户的默认表空间。(查找的结果应该截图,显示在下面)SQLSELECT user_name,default_tablespace 2 FROM dba_users;,第20页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5 数据库审计13.6 小结13.7 习题,第21页,在用户创建完成后,仅仅表示该用户在Oracle系统中进行了注册而已,这样的用户既不能连接到数据库,更谈不

17、上进行查询、建表等操作。要使该用户能够连接到Oracle系统并能使用Oracle的资源,如查询表的数据,创建自己的表结构等,必须由具有DBA角色的用户对该用户进行授权。,第22页,13.3.1 权限概述,权限是指执行特定类型的SQL语句或访问另一个用户的对象的权利,例如:连接到数据库,创建表,查询其他用户的表,调用其他用户的存储过程等。Oracle数据库使用权限来控制用户对数据的访问和用户所能执行的操作。用户在数据库中可以执行什么样的操作,以及可以对哪些对象进行操作,完全取决于该用户所拥有的权限。根据系统管理方式的不同,在Oracle数据库中将权限分为两大类,系统权限和对象权限。系统权限指数据

18、库级别执行某些操作的权限,即用户执行某一特定的数据库操作或某类数据库操作等的权限,例如创建表空间,创建会话等。,第23页,对象权限是指对数据库中的特定对象(例如表、视图、序列、过程、函数或程序包)的访问控制,以及用户可以在这些数据库对象上执行哪些操作。例如插入表记录,增加约束条件等。无论系统权限还是对象权限,在Oracle数据库中,将权限授予用户的方式有直接授权和间接授权两种。所谓直接授权就是利用GRANT命令直接为用户授权,间接授权就是先将权限授予角色,再将角色授予用户。另外,已经获得某种权限的用户可以将他们的权限或其中一部分权限再授予其他用户。,第24页,13.3.2 系统权限管理,在Or

19、cale 11g 中含有200多种系统权限,每种系统权限都为用户提供了执行某一种或某一类数据库操作的能力,可以将系统权限授予用户和角色。由于系统权限可能影响到整个数据库,所有授予系统权限给用户时需要慎重。1授予系统权限 系统管理员给用户授权时,应该考虑到不同用户的身份。例如数据库管理员用户应该具有创建用户、修改用户权限、创建表空间以及可以对数据库任何模式中的对象进行管理的权限,而数据库开发人员应该具有在自己的方案中创建表、视图、过程等的权限。另外一些普通用户应该只赋予CREATE SESSION的权限。,第25页,授予系统权限的语法:GRANT system_privilege|role,sy

20、stem_privilege|roleTO user|role|PUBLIC,user|role|PUBLIC WITH ADMIN OPTION参数说明:l system_privilege:要授予的系统权限l user:被授予权限的用户l role:被授予的角色名l PUBLIC:将系统权限授予所有用户l WITH ADMIN OPTION:允许被授予者进一步为其他用户或角色授予权限或角色。当授权时带有这个子句时,用户才可以将获得的系统权限再授予其他用户,即系统权限的传递性。,第26页,【例13-5】数据库管理员授予CREATE SESSION权限给用户atea。SQLGRANT CREA

21、TE SESSION TO atea;2.系统权限收回 一般用户被授予过高的权限可能会给Oracle系统带来安全隐患。作为Oracle系统管理员,应该会查询当前Oracle系统中各个用户的权限,并且能够使用REVOKE命令撤销用户的某些不必要的系统权限。可以使用REVOKE语句撤销系统权限。REVOKE system_privilege|role,system_privilege|roleFROM user|role|PUBLIC,user|role|PUBLIC REVOKE语句中的参数和GRANT语句中相同。,第27页,【例13-6】收回用户atea的CREATE SESSION权限SQL

22、REVOKE CREATE SESSION FROM atea;需要说明的是,如果数据库管理员使用了GRANT语句给用户A授予系统权限时带有WITH ADMIN OPTION选项,则该用户A有权将系统权限再次授予其他的用户B。在这种情况下,如果数据库管理员使用REVOKE命令撤销A用户的系统权限时,用户B的系统授权仍然有效。,13.3.3 对象权限管理,对象权限是一种对于特定对象(表、视图、序列、过程、函数或程序包等)执行特定操作的一种权限。数据库用户拥有对自己的对象的所有对象权限,所以对象权限的管理实际上即是对象所有者对其他用户操作该对象的权限管理。,第28页,1.授予对象权限授予对象权限的

23、语法:GRANT object_privilege(column_list),object_privilege(column_list)|ALL PRIVILEGESON schema.objectTO user|role|PUBLIC,user|role|PUBLIC WITH GRANT OPTION其中参数说明如下:l object_privilege:表示要授予的对象权限;l column_list:指定表或视图列;l ALL:将所有权限授予那些已被授予WITH GRANT OPTION的对象;l ON object:object表示将要被授予权限的目标对象;l Role:角色名;l

24、User:被授予的用户名;l WITH GRANT OPTION:表示被授予者可再将对象权限授予其他用户。,第29页,【例13-7】将SELECT、INSERT、DELETE授权给atea用户。SQLGRANT SELECT,INSERT,DELETE ON emp TO atea;2.对象权限回收 要从用户或者角色中撤销对象权限,仍然要使用REVOKE命令来完成。要撤销对象权限,撤销者必须是将被撤销的对象权限的原始授予者。撤销对象权限的语法:REVOKE object_privilege,object_privilege|ALL PRIVILEGESON schema.objectFROM

25、user|role|PUBLIC,user|role|PUBLIC CASCADE CONSTRAINTS,第30页,其中参数说明如下:l object_privilege:指定将撤销的对象权限;l ALL:撤销已授予用户的所有对象权限;l ON:标识将撤销其对象权限的对象;l FROM:标识将撤销其对象权限的用户或角色;l CASCADE CONSTRAINTS:删除撤销使用REFERENCES或ALL权限定义的任何引用完整性约束限制;【例13-8】从atea用户撤销emp对象的所有权限。SQLREVOKE ALL ON emp FROM atea;需要注意的是,如果数据库管理员使用GRAN

26、T命令给用户A授予对象权限时带有WITH ADMIN OPTION选项,则该用户A有权将权限再次授予其他的用户B。在这种情况下,如果数据库管理员使用REVOKE命令撤销A用户的对象权限时,用户B的对象权限也被撤销。需要注意,在进行系统权限回收和进行对象权限回收时,效果是不一样的。,第31页,13.3.4 权限查询,用户被授予的系统权限或者对象权限都被记录在Oracle的数据字典中,了解某个用户被授予哪些系统权限和对象权限是确保应用系统安全的重要工作。如表13-1所示为Oracle11g用于存放用户、系统权限和对象权限有关的数据字典。,【例13-9】查询所有的对象权限。(查找的结果应该截图粘贴在

27、下面)SQLSELECT*FROM dba_tab_privs;,第32页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审计13.6小结13.7习题,第33页,13.4 角色管理,Oracle 中的权限分类很多,设置十分复杂,就系统权限而言,在Oracle11g中就超过了200种,为数据库管理员正确有效地管理数据库权限带来了困难,而角色就是简化权限管理的一种数据库对象。,13.4.1 角色概述,角色是权限管理的一种工具,是一系列权限的集合,角色可以被授予任何用户,也可以从用户中收回。使用角色可以简化权限的管理,可以仅用一条语句就能从用户那里授予或

28、者回收许多权限,而不必对用户一一授权。使用角色还可以实现权限的动态管理,比如随着应用的变化可以增加或者减少角色的权限,这样通过改变角色权限,就改变了多个用户的权限。,第34页,角色、用户及权限是一组有密切关系的对象,既然角色是一组权限的集合,那么他被授予某个用户时才能有意义,可以如图13-1所示帮助我们理解角色、用户及权限的关系。,图13-1 用户、角色和权限的关系,第35页,在复杂的大型应用系统,要求对应用系统功能进行分类,从而形成角色的雏形,再使用CREATE ROLE语句将它们创建为角色;最后根据用户工作的分工,将不同的角色(包括系统预定义的角色)授予各类用户。如果应用系统的规模很小,用

29、户数也不多,则可以直接将应用的权限授予用户,即使是这样,用户也必须对Oracle系统的预定义角色有所了解。角色所对应的权限集合中可以包含系统权限和对象权限。角色是可以授予另外一个角色的,需要避免将角色授予它本身,也不能循环授予。,13.4.2 创建角色,如果系统预定义的角色不符合用户的需要,数据库管理员还可以创建更多的角色。创建用户自定义角色使用CREATE ROLE语句来实现。,第36页,创建角色语句的语法格式如下:CREATE ROLE role_name NOT IDENTIFIED IDENTIFIED BY password;对其中的参数说明如下:l role_name:用于指定自定

30、义角色名称,该名称不能与任何用户名或其他角色相同。l NOT IDENTIFIED:用户指定该角色由数据库授权,使该角色生效时不需要口令。l IDENTIFIED BY password:用于设置角色生效时的认证口令。【例13-10】创建不验证的角色doctor_clerkSQLCREATE ROLE doctor_clerk;【例13-11】创建使用口令验证的角色SQLCREATE ROLE unit_clerk IDENTIFIED BY caption;【例13-12】创建外部验证的角色SQLCREATE ROLE unit_manager IDENTIFIED EXTERNALLY;,

31、第37页,13.4.3 角色授权 当角色被建立后,没有任何权限,只有对其授予权限,才有使用的意义。因此,在创建角色后,通常还需要立即为它授予权限。可以通过给用户授权的GRANT语句给角色授权,并将角色赋予相应的数据库用户。角色权限的授予与回收和用户权限的授予与回收类似,语法也与其相同。【例13-13】为teller角色授予CREATE SESSION 和CREATE DATABASE LINK权限 SQLGRANT CREATE SESSION,CREATE DATABASE LINK to teller;对角色授权后,就可以将角色授予某个用户。【例13-14】将teller角色授予用户wan

32、g SQLGRANT teller TO wang;,第38页,13.4.4 角色的生效/失效 当某角色生效时,属于角色的用户可以执行该角色所具有的所有权限操作,而当某角色失效时,拥有这个角色的用户将不能执行该角色的任何权限操作。因此,通过设置角色的生效或失效,可以动态改变用户的权限。设置角色生效或失效使用SET ROLE语句,语法格式为:SET ROLE role IDENTIFIED BY password,role IDENTIFIED BY password|ALL EXCEPT role,role|NONE,第39页,参数说明如下:l role:是角色的名称;l IDENTIFIED

33、 BY password:提供角色生效时所需的口令;l ALL:除了EXCEPT子句中列出的角色外,授予当前用户的全部角色生效;l EXCEPT role:这些角色不生效;l NONE:当前会话的全部角色失效(只有直接授予用户的权限是可用的)。角色的生效针对的是会话,在下一个会话中,用户的活动角色将默认为默认角色。如果角色设置了口令,则SET ROLE命令中必须包含口令才能使角色生效。分配给用户的默认角色不需要口令,这些角色同没有口令的角色一样在登录时生效。,第40页,【例13-15】在当前会话中使角色doctor_clerk生效。SQLSET ROLE doctor_clerk;【例13-1

34、6】在当前会话中使除了unit_manager之外的所有角色生效。SQLSET ROLE ALL EXCEPT unit_manager;【例13-17】设置当前用户所有角色失效。SQLSET ROLE NONE;,13.4.5 修改角色 修改角色时,只能修改角色生效或失效时的认证方式,也就是说,是否必须经过Oracle确认才允许对角色进行修改。而且,当前用户的角色必须通过ADMIN选项进行授予,或者当前用户必须具有ALTER ANY ROLE系统权限。修改角色的语法:ALTER ROLE role NOT IDENTIFIED|IDENTIFIEDBY password|USING pack

35、age|EXTERNALLY|GLOBALLY;,第41页,参数说明如下:l role:角色名称;l NOT IDENTIFIED:表明该角色生效时,不需要进行验证;l IDENTIFIED:表明该角色生效时,需要进行验证;l BY password:提供角色生效时所使用的口令;l EXTERNALLY:表明该角色生效之前,用户必须由外部服务(例如操作系统或网络服务)授权;l GLOBALLY:表明通过SET ROLE语句使角色生效之前或登录时,必须由企业目录服务授权用户使用该角色。,第42页,【例13-18】修改角色unit_clerk由外部验证。SQLALTER ROLE unit_cle

36、rk IDENTIFIED EXTERNALLY;【例13-19】修改角色unit_manager不验证。SQLALTER ROLE unit_manager NOT IDENTIFIED;【例13-20】修改角色doctor_clerk验证密码。SQLALTER ROLE doctor_clerk IDENTIFIED BY ORDER;,13.4.6 删除角色 如果不再需要某个角色或者某个角色的设置不太合理时,就可以使用DROP ROLE来删除角色,使用该角色的用户的权限同时也被回收。删除用户一般由DBA操作。,第43页,删除角色的语法如下:DROP ROLE role;参数说明如下:l

37、role:角色名称;【例13-21】删除角色unit_clerk。SQLDROP ROLE unit_clerk;,13.4.7 查询角色信息 可以通过查询数据字典或动态性能视图获得数据库角色的相关信息。l DBA_ROLES:数据库中的所有角色及其描述;l DBA_ROLES_PRIVS:授予用户和角色的角色信息;l DBA_SYS_PRIVS:授予用户和角色的系统权限;l USER_ROLE_PRIVS:为当前用户授予的角色信息;l ROLE_ROLE_PRIVS:授予角色的角色信息;,第44页,l ROLE_SYS_PRIVS:授予角色的系统权限信息;l ROLE_TAB_PRIVS:授

38、予角色的对象权限信息;l SESSION_PRIVS:当前会话所具有的系统权限信息;l SESSION_ROLES:用户当前授权的角色信息。【例13-22】查询用户martha的角色及默认角色。(应该有截图)SQLSELECT*FROM dba_roles_privs 2 WHERE grantee=MARTHA;【例13-23】查询DBA角色所具有的系统权限信息。(应该有截图)SQLSELECT*FROM ROLE_SYS_PRIVS 2 WHERE ROLE=DBA;,第45页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审计13.6小结13

39、.7习题,第46页,13.5数据库审计,审计是监视和记录用户对数据库所进行的操作,以供DBA进行统计和分析。对于安全要求较高的应用系统来说,数据库管理员可以启用Oracle系统提供的审计机制,以满足最终客户对安全的需求。Oracle数据库系统提供对其内部所发生的活动进行审计的功能,也就是Oracle系统对任何用户进行的登录、操作数据库对象进行自动登记,以方便数据库管理者在事后进行监督和检查。,第47页,通常对以下3种情况进行审计,如表13-2所示。,【例13-24】启动数据库的审计功能ALTER SYSTEM SET audit_trail=DB SCOPE=SPFILE;SHUTDOWN I

40、MMEDIATESTARTUP,第48页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审计13.6小结13.7习题,第49页,13.6小结,本章主要介绍了Oracle数据库的安全管理机制,包括用户管理、权限管理、角色管理和数据库审计等。确保Oracle数据库系统的可用性和安全性是DBA的主要职责,Oracle数据库安全管理是以用户为核心进行的,包括用户的创建、权限的授予与回收、对用户占用资源的限制和口令管理等。,第50页,主要内容,13.1 概述13.2 用户管理13.3 权限管理13.4 角色管理13.5数据库审计13.6小结13.7习题,第5

41、1页,13.7习题,一、选择题1.create user命令中的default tablespace语句用于下列哪种设置?()A用户创建的数据库对象 B.用户创建的临时对象C用户创建的系统对象 D.上面都不对 2撤销用户指定权限的命令是()。AREVOKE B.REMOVE RIGHT C.DROP RIGHT D.DELETE RIGHT3.哪一种操作受表空间配额的限制?()A.UPDATE B.DELETE C.CREATE D.以上全是4.拥有所有系统级管理权限的角色是()。A.ADMIN B.SYSTEM C.SYSMAN D.DBA,第52页,二、操作题1.简述用户和角色的关系。2.

42、创建一个口令认证的数据库用户usera_exer,口令为usera,默认表空间为USERS,配额为10MB,初始账户为锁定状态。3.将创建的usera_exer用户解锁。4.为usera_exer用户授予CREATE SESSION权限、scott.enp的SELECT权限和UPDATE权限,同时允许该用户将获得的权限授予其他用户。5.创建名为Manager的角色,该角色拥有创建表、视图,并能够从scott的dept表进行SELECT的操作。6.将CONNECT角色、RESOURCE角色和Manager角色分配给usera_exer用户,并设置usera_exer用户的默认角色是RESOURCE.。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号