Oracle数据库安全管理PPT课件(-102页).ppt
《Oracle数据库安全管理PPT课件(-102页).ppt》由会员分享,可在线阅读,更多相关《Oracle数据库安全管理PPT课件(-102页).ppt(101页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第10章章 安全管理安全管理主要内容主要内容pOracle数据库安全性概述p用户管理 p权限管理 p角色管理p概要文件管理p审计 p利用OEM进行安全管理本章要求本章要求p了解Oracle数据库安全机制p掌握用户管理p掌握权限管理p掌握角色管理p了解概要文件的作用及其应用p了解审计及其应用10.1 数据库安全性概述数据库安全性概述p数据库的安全性主要包括两个方面的含义:n一方面是防止非法用户对数据库的访问,未授权的用一方面是防止非法用户对数据库的访问,未授权的用户不能登录数据库;户不能登录数据库;n另一方面是每个数据库用户都有不同的操作权限,只另一方面是每个数据库用户都有不同的操作权限,只能
2、进行自己权限范围内的操作。能进行自己权限范围内的操作。pOracle数据安全控制机制 n用户管理用户管理n权限管理权限管理 n角色管理角色管理 n表空间设置和配额表空间设置和配额 n用户资源限制用户资源限制 n数据库审计数据库审计 pOracle数据库的安全可以分为两类:n系统安全性系统安全性p系统安全性是指在系统级控制数据库的存取和使用的机制,包括有效的用户名与口令的组合、用户是否被授权可连接数据库、用户创建数据库对象时可以使用的磁盘空间大小、用户的资源限制、是否启动了数据库审计功能,以及用户可进行哪些系统操作等。n数据安全性数据安全性p数据安全性是指在对象级控制数据库的存取和使用机制,包括
3、用户可存取的模式对象和在该对象上允许进行的操作等。 10.2 用户管理用户管理p用户管理概述 p创建用户 p修改用户 p删除用户 p查询用户信息 10.2.1用户管理概述用户管理概述pOracle数据库初始用户 n SYS:是数据库中具有最高权限的数据库管理员,可:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典;以启动、修改和关闭数据库,拥有数据字典;n SYSTEM:是一个辅助的数据库管理员,不能启动和:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。用户、删除用
4、户等。nSCOTT:是一个用于测试网络连接的用户,其口令为:是一个用于测试网络连接的用户,其口令为TIGER。nPUBLIC:实质上是一个用户组,数据库中任何一个:实质上是一个用户组,数据库中任何一个用户都属于该组成员。要为数据库中每个用户都授予用户都属于该组成员。要为数据库中每个用户都授予某个权限,只需把权限授予某个权限,只需把权限授予PUBLIC就可以了。就可以了。p用户属性n用户身份认证方式用户身份认证方式n默认表空间默认表空间n临时表空间临时表空间n表空间配额表空间配额 n概要文件概要文件 n账户状态账户状态n用户身份认证方式用户身份认证方式p数据库身份认证:数据库用户口令以加密方式保
5、存在数据库内部,当用户连接数据库时必须输入用户名和口令,通过数据库认证后才可以登录数据库。 p外部身份认证:当使用外部身份认证时,用户的账户由Oracle数据库管理,但口令管理和身份验证由外部服务完成。外部服务可以是操作系统或网络服务。当用户试图建立与数据库的连接时,数据库不会要求用户输入用户名和口令,而从外部服务中获取当前用户的登录信息。 p全局身份认证:当用户试图建立与数据库连接时,Oracle使用网络中的安全管理服务器(Oracle Enterprise Security Manager)对用户进行身份认证。Oracle的安全管理服务器可以提供全局范围内管理数据库用户的功能。 n默认表空
6、间默认表空间p当用户在创建数据库对象时,如果没有显式地指明该对象在哪个表空间中存储,系统会自动将该数据库对象存储在当前用户的默认表空间中。如果没有为用户指定默认表空间,则系统将数据库的默认表空间作为用户的默认表空间。 n临时表空间临时表空间 p当用户进行排序、汇总和执行连接、分组等操作时,系统首先使用内存中的排序区SORT_AREA_SIZE,如果该区域内存不够,则自动使用用户的临时表空间。在Oracle 10g中,如果没有为用户指定临时表空间,则系统将数据库的默认临时表空间作为用户的临时表空间。n表空间配额表空间配额p表空间配额限制用户在永久表空间中可以使用的存储空间的大小,默认情况下,新建
7、用户在任何表空间中都没有任何配额。p用户在临时表空间中不需要配额。 n概要文件概要文件 p每个用户都必须有一个概要文件,从会话级和调用级两个层次限制用户对数据库系统资源的使用,同时设置用户的口令管理策略。如果没有为用户指定概要文件,Oracle将为用户自动指定DEFAULT概要文件。 n账户状态账户状态p在创建用户的同时,可以设定用户的初始状态,包括用户口令是否过期以及账户是否锁定等。Oracle允许任何时候对帐户进行锁定或解锁。锁定账户后,用户就不能与Oracle数据库建立连接,必须对账户解锁后才允许用户访问数据库。 10.2.2.创建用户创建用户p基本语法nCREATE USER user
8、_name IDENTIFIED nBY password|EXTERNALLY|GLOBALLYn AS external_namenDEFAULT TABLESPACE tablespace_namenTEMPORARY TABLESPACE temp_tablesapce_namenQUOTA n K|M|UNLIMITED ON tablespace_namenPROFILE profile_namenPASSWORD EXPIREnACCOUNT LOCK|UNLOCK;p参数说明nuser_name:用于设置新建用户名用于设置新建用户名,在数据库中用户名必须是在数据库中用户名必须是
9、唯一的唯一的;nIDENTIFIED:用于指明用户身份认证方式;:用于指明用户身份认证方式;nBY password:用于设置用户的数据库身份认证,其中:用于设置用户的数据库身份认证,其中password为用户口令;为用户口令;nEXTERNALLY:用于设置用户的外部身份认证;:用于设置用户的外部身份认证;nGLOBALLY ASexternal_name:用于设置用户的全局身:用于设置用户的全局身份认证,其中份认证,其中external_name为为Oracle的安全管理服务器相的安全管理服务器相关信息关信息;nDEFAULT TABLESPACE:用于设置用户的默认表空间,如果:用于设置
10、用户的默认表空间,如果没有指定,没有指定,Oracle将数据库默认表空间作为用户的默认表空间;将数据库默认表空间作为用户的默认表空间;nTEMPORARY TABLESPACE:用于设置用户的临时表空间;:用于设置用户的临时表空间;nQUOTA:用于指定用户在特定表空间上的配额,即用户在该表:用于指定用户在特定表空间上的配额,即用户在该表空间中可以分配的最大空间中可以分配的最大 空间;空间;nPROFILE:用于为用户指定概要文件,默认值为:用于为用户指定概要文件,默认值为DEFAULT,采用系统默认的概要文件;采用系统默认的概要文件;nPASSWORD EXPIRE:用于设置用户口令的初始状
11、态为过期,:用于设置用户口令的初始状态为过期,用户在首次登录数据库时必须修改口令;用户在首次登录数据库时必须修改口令;nACCOUNT LOCK:用于设置用户初始状态为锁定,默认为不:用于设置用户初始状态为锁定,默认为不锁定;锁定;nACCOUNT UNLOCK:用于设置用户初始状态为不锁定或解除:用于设置用户初始状态为不锁定或解除用户的锁定状态用户的锁定状态p注意n在创建新用户后,必须为用户授予适当的权限,用户在创建新用户后,必须为用户授予适当的权限,用户才可以进行相应的数据库操作。例如,授予用户才可以进行相应的数据库操作。例如,授予用户CREATE SESSION权限后,用户才可以连接到数
12、据权限后,用户才可以连接到数据库。库。p创建数据库用户示例 n创建一个用户创建一个用户user3,口令为,口令为user3,默认表空间为,默认表空间为USERS,在该表空间的配额为,在该表空间的配额为10 MB,初始状态为,初始状态为锁定。锁定。pCREATE USER user3 IDENTIFIED BY user3 pDEFAULT TABLESPACE USERS QUOTA 10M ON USERS ACCOUNT LOCK;n创建一个用户创建一个用户user4,口令为,口令为user4,默认表空间为,默认表空间为USERS,在该表空间的配额为,在该表空间的配额为10 MB。口令设置
13、为。口令设置为过期状态,即首次连接数据库时需要修改口令。概要过期状态,即首次连接数据库时需要修改口令。概要文件为文件为example_profile(假设该概要文件已经创(假设该概要文件已经创建)。建)。pCREATE USER user4 IDENTIFIED BY user4 pDEFAULT TABLESPACE USERS pQUOTA 10M ON USERSpPROFILE example_profile pPASSWORD EXPIRE; p基本语法nALTER USER user_name IDENTIFIEDnBY password|EXTERNALLY|GLOBALLY n
14、AS external_namenDEFAULT TABLESPACE tablespace_namenTEMPORARY TABLESPACE temp_tablesapce_namenQUOTA n K|M|UNLIMITED ON tablespace_namenPROFILE profile_namenDEFAULT ROLE role_list|ALL EXCEPT role_list n|NONEnPASSWORD EXPIREnACCOUNT LOCK|UNLOCK; 10.2.3 修改用户修改用户p参数说明nrole_list:角色列表;:角色列表;nALL :表示所有角色;:
15、表示所有角色;nEXCEPT role_list:表示除了:表示除了role_list列表中的角列表中的角色之外的其他角色;色之外的其他角色;nNONE:表示没有默认角色。:表示没有默认角色。p注意,指定的角色必须是使用GRANT命令直接授予该用户的角色。p修改数据库用户示例n将用户user3的口令修改为newuser3,同时将该用户解锁。pALTER USER user3 pIDENTIFIED BY newuser3 ACCOUNT UNLOCK;n修改用户user4的默认表空间为ORCLTBS1,在该表空间的配额为20 MB,在USERS表空间的配额为10 MB。pALTER USER
16、user4pDEFAULT TABLESPACE ORCLTBS1 pQUOTA 20M ON ORCLTBS1 pQUOTA 10M ON USERS; p用户的锁定与解锁n某个用户暂时离开工作某个用户暂时离开工作 n某个用户永久离开工作某个用户永久离开工作nDBA创建的特殊用户帐户创建的特殊用户帐户p示例nALTER USER user3 ACCOUNT LOCK; nALTER USER user3 ACCOUNT UNLOCK;10.2.4删除用户删除用户p基本语法nDROP USER user_name CASCADE ;p步骤n先删除用户所拥有的对象先删除用户所拥有的对象n再删除用
17、户再删除用户n将参照该用户对象的其他数据库对象标志为将参照该用户对象的其他数据库对象标志为INVALID10.2.5查询用户信息查询用户信息pALL_USERS:包含数据库所有用户的用户名、用户ID和用户创建时间。pDBA_USERS:包含数据库所有用户的详细信息。pUSER_USERS:包含当前用户的详细信息。 pDBA_TS_QUOTAS:包含所有用户的表空间配额信息。pUSER_TS_QUOTAS:包含当前用户的表空间配额信息。pV$SESSION:包含用户会话信息。pV$OPEN_CURSOR:包含用户执行的SQL语句信息。p查看数据库所有用户名及其默认表空间。nSELECT SERN
18、AME,DEFAULT_TABLESPACE nFROM DBA_USERS; p查看数据库中各用户的登录时间、会话号。nSELECT nSID,SERIAL#,LOGON_TIME,USERNAME nFROM V$SESSION; 10.3 权限管理权限管理p权限管理概述p系统权限管理p对象权限管理p查询权限信息10.3.1权限管理概述权限管理概述p概念n所谓权限就是执行特定类型所谓权限就是执行特定类型SQLSQL命令或访问其他用户的命令或访问其他用户的对象的权利。用户在数据库中可以执行什么样的操作,对象的权利。用户在数据库中可以执行什么样的操作,以及可以对哪些对象进行操作,完全取决于该用
19、户所以及可以对哪些对象进行操作,完全取决于该用户所拥有的权限。拥有的权限。p分类n系统权限:系统权限是指在数据库级别执行某种操作系统权限:系统权限是指在数据库级别执行某种操作的权限,或针对某一类对象执行某种操作的权限。例的权限,或针对某一类对象执行某种操作的权限。例如如,CREATE SESSIONCREATE SESSION权限、权限、CREATE ANY TABLECREATE ANY TABLE权限。权限。n对象权限:对象权限是指对某个特定的数据库对象执对象权限:对象权限是指对某个特定的数据库对象执行某种操作的权限。例如行某种操作的权限。例如,对特定表的插入、删除、,对特定表的插入、删除
20、、修改、查询的权限。修改、查询的权限。p授权方法n直接授权:利用直接授权:利用GRANT命令直接为用户授权。命令直接为用户授权。n间接授权:先将权限授予角色,然后再将角色授予用间接授权:先将权限授予角色,然后再将角色授予用户。户。10.3.2系统权限管理系统权限管理p系统权限分类p系统权限的授权 p系统权限的回收 (1)系统权限分类)系统权限分类p一类是对数据库某一类对象的操作能力,通常带有ANY关键字。例如,CREATE ANY INDEX,ALTER ANY INDEX,DROP ANY INDEX 。p另一类系统权限是数据库级别的某种操作能力。例如,CREATE SESSION。(2)系
21、统权限的授权)系统权限的授权p语法为nGRANT sys_priv_list TO nuser_list|role_list|PUBLIC nWITH ADMIN OPTION;p参数说明:nsys_priv_list:表示系统权限列表:表示系统权限列表,以逗号分隔以逗号分隔;nuser_list:表示用户列表:表示用户列表,以逗号分隔以逗号分隔;nrole_list:表示角色列表,以逗号分隔;:表示角色列表,以逗号分隔;nPUBLIC:表示对系统中所有用户授权;:表示对系统中所有用户授权;nWITH ADMIN OPTION:表示允许系统权限接收:表示允许系统权限接收者再把此权限授予其他用户
22、。者再把此权限授予其他用户。p系统权限授予时需要注意的几点:n只有只有DBA才应当拥有才应当拥有ALTER DATABASE 系统权系统权限。限。n应用程序开发者一般需要拥有应用程序开发者一般需要拥有CREATE TABLE、CREATE VIEW和和CREATE INDEX等系统权限。等系统权限。n普通用户一般只具有普通用户一般只具有CREATE SESSION系统权限。系统权限。n只有授权时带有只有授权时带有WITH ADMIN OPTION子句时,子句时,用户才可以将获得的系统权限再授予其他用户,即系用户才可以将获得的系统权限再授予其他用户,即系统权限的传递性。统权限的传递性。p为PUB
23、LIC用户组授予CREATE SESSION系统权限。nGRANT CREATE SESSION TO PUBLIC;p为用户user1授予CREATE SESSION,CREATE TABLE,CREATE INDEX系统权限。nGRANT CREATE SESSION,CREATE TABLE,CREATE VIEW TO user1; p为用户user2授予CREATE SESSION,CREATE TABLE ,CREATE INDEX系统权限。user2获得权限后,为用户user3授予CREATE TABLE权限。nGRANT CREATE SESSION,CREATE TABLE,
24、nCREATE VIEW TO user2 WITH ADMIN OPTION;nCONNECT user2/user2 ORCL nGRANT CREATE TABLE TO user3;p语法为nREVOKE sys_priv_list nFROM user_list|role_list|PUBLIC;p注意事项n多个管理员授予用户同一个系统权限后,其中一个管理员多个管理员授予用户同一个系统权限后,其中一个管理员回收其授予该用户的系统权限时,该用户将不再拥有相应回收其授予该用户的系统权限时,该用户将不再拥有相应的系统权限。的系统权限。 n为了回收用户系统权限的传递性(授权时使用了为了回收用
25、户系统权限的传递性(授权时使用了WITH ADMIN OPTION子句),必须先回收其系统权限,然子句),必须先回收其系统权限,然后再授予其相应的系统权限。后再授予其相应的系统权限。n如果一个用户获得的系统权限具有传递性,并且给其他用如果一个用户获得的系统权限具有传递性,并且给其他用户授权,那么该用户系统权限被回收后,其他用户的系统户授权,那么该用户系统权限被回收后,其他用户的系统权限并不受影响。权限并不受影响。(3)系统权限的回收)系统权限的回收 10.3 对象权限管理对象权限管理p对象权限分类p对象权限的授权p对象权限的回收 (1)对象权限分类)对象权限分类p在Oracle数据库中共有9种
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库 安全管理 PPT 课件 102
限制150内