资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库原理与应用,(Oracle版),人民邮电出版社,2,第10章 用户权限与安全,10.1 用户和模式 10.2 管理用户 10.3 用户配置文件管理 10.4 管理权限 10.5 管理角色,10.1 用户和模式,由于Oracle中的对象是一种基于模式的管理方式,每个数据库对象都显式地属于一个用户,属于这个用户的对象的集合称为模式(Schema),通过灵活地控制用户的权限,即可灵活地控制用户模式对象的安全性。 用户是定义在数据库中的一个名称,它是Oracle数据库的基本访问控制机制,用来连接和访问数据库对象。,人民邮电出版社,3,10.1 用户和模式,“数据库用户账户”是一种组织数据库对象的所有权和访问权限的方法,简称用户。要访问数据库,用户必须指定有效的数据库用户账户,而且还要根据该用户账户的要求成功通过验证。每个数据库用户都有一个唯一的数据库账户。 每个数据库用户账户都由用户名标识,用户的属性(包括:认证方式、用于数据库认证的口令、用于永久和临时数据存储的默认表空间、表空间限额、账户状态、口令状态)组成。,人民邮电出版社,4,10.1 用户和模式,“数据库用户账户”是一种组织数据库对象的所有权和访问权限的方法,简称用户。要访问数据库,用户必须指定有效的数据库用户账户,而且还要根据该用户账户的要求成功通过验证。每个数据库用户都有一个唯一的数据库账户。 每个数据库用户账户都由用户名标识,用户的属性(包括:认证方式、用于数据库认证的口令、用于永久和临时数据存储的默认表空间、表空间限额、账户状态、口令状态)组成。,人民邮电出版社,5,10.1 用户和模式,模式(Schema) 对Oracle来说,模式是指数据库对象的集合,是对用户所创建的数据对象的总称。模式对象是数据库数据的逻辑结构,包括表、视图、索引、同义词、序列、过程和程序包等。 一个用户一般对应一个模式,该用户的模式名等于用户名,并作为该用户缺省的模式。 一个用户有一个缺省的模式,当然一个用户还可以使用其他的模式。,人民邮电出版社,6,10.2 管理用户,Oracle数据库的安全保护流程可以总结为3个步骤: 首先,用户向数据库提供身份识别信息,即提供一个数据库账号; 其次,用户还需要证明他们所给出的身份识别信息是有效的,这是通过输入口令实现的; 最后,假设口令是正确的,那么数据库认为身份识别信息是可信赖的。此时,数据库将会在基于身份识别信息的基础上决定用户所拥有的权限,即用户可以对数据库执行什么操作。,人民邮电出版社,7,10.2 管理用户,数据库的存取控制包括: 用户认证 操作系统认证、Oracle数据库认证、网络服务认证 用户的表空间设置和配额 用户的缺省表空间、用户的临时表空间、数据库表空间的空间使用配额 用户资源限制和配置文件 用户可用的各种系统资源总量的限制是用户安全域的部分。利用显式地设置资源限制,管理员可防止用户无控制地消耗宝贵的系统资源。资源限制是由用户配置文件管理。用户配置文件是指定资源限制的命名集,可赋给Oracle数据库的有效用户。利用用户配置文件可容易地管理资源限制。,人民邮电出版社,8,10.2 管理用户,创建用户 CREATE USER 用户名 IDENTIFIED BY 口令 DEFAULT TABLESPACE 缺省表空间名 TEMPORARY TABLESPACE 临时表空间名 QUOTA 存储空间配额 K | M | UNLIMITED ON 缺省表空间名 PROFILE 配置文件名 PASSWORD EXPIRE ACCOUNT LOCK | UNLOCK;,人民邮电出版社,9,10.2 管理用户,创建用户 以system/ustb2012身份创建一个用户tom,其口令是ustb2012,默认的表空间是users,零时表空间是temp,并授予其CREATE SESSION权限。 SQL CONN system/ustb2012 SQL CREATE USER tom IDENTIFIED BY ustb2012 DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUDTA 3M ON users; SQL GRANT CREATE SESSION to tom;,人民邮电出版社,10,10.2 管理用户,修改用户 在创建用户之后,可以使用ALTER USER语句对用户进行修改,一般由DBA或具有ALTER USER系统权限的用户来进行用户的修改。对用户的修改包括:口令、缺省表空间、临时表空间、表空间配额、配置文件、缺省角色、用户账户的锁定或解锁等。 修改口令 以tom登录,并使用ALTER USER修改其自己的口令为ustb2013。 SQLCONN tom/ustb2012 SQLALTER USER tom BY ustb2013;,人民邮电出版社,11,10.2 管理用户,修改用户的默认表空间的语法如下: ALTER USER 用户名 DEFAULT TABLESPACE 新缺省表空间名 TEMPORARY TABLESPACE 新临时表空间名 修改用户的表空间配额 【例10.3】以system/ustb2012身份将tom用户的users表空间的配额修改为100M。 SQLCONN sysytem/ustb2012 SQLALTER USER tom QUOTA 100M ON users;,人民邮电出版社,12,10.2 管理用户,删除用户 使用DROP USER语句可以删除已有的用户,执行该语句的用户必须具有DROP USER系统权限。删除用户后,Oracle会从数据字典中删除用户、模式及其所有模式对象。语法如下: DROP USER 用户名 CASCADE; 显示用户信息 1)显示当前会话用户:SQL SHOW USER 2)显示用户信息 SQL SELECT username, default_tablespace, temporary_tablespace FROM DBA_USERS;,人民邮电出版社,13,10.3 用户配置文件管理,用户配置文件作为Oracle安全策略的重要组成部分,利用它可以对数据库用户进行基本的资源限制,并且可以对用户的口令进行管理。 用户配置文件(PROFILE)是口令限制、资源限制的命名集合。,人民邮电出版社,14,10.3 用户配置文件管理,使用用户配置文件管理口令 使用配置文件可以实现如下三种口令策略: (1)账户的锁定 (2)口令的过期时间 (3)口令的复杂度,人民邮电出版社,15,10.3 用户配置文件管理,例如,您可能希望让口令每70天失效一次,也可能希望在用户账户尝试登录3次均失败后锁定该用户账户。您可能还希望要求口令足够复杂,以便针对企图通过猜出口令进入系统的入侵者提供合理的保护。例如,您可能指定,口令必须包含至少一个数字和一个标点符号。所有这些要求都可以通过修改DEFAULT配置文件的与口令相关的属性,来更改数据库中每个用户账户的口令策略。 ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME 70 FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 1 PASSWORD_GRACE_TIME 7 PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_VERIFY_FUNCTION my_verify_function;,人民邮电出版社,16,10.3 用户配置文件管理,使用用户配置文件管理资源 大部分资源限制都可以在两个级别进行:会话级或调用级。 会话级资源限制是对用户在一个会话过程中所能使用的资源进行的限制; 调用级资源限制是对一条SQL语句在执行过程中所能使用的资源进行的限制。,人民邮电出版社,17,10.3 用户配置文件管理,创建用户配置文件 【例10.5】假设现在要为用户tom创建一个用户配置文件,口令策略及资源限制如下:每30天修改一次登录口令,用户账户尝试登录3次均失败后锁定该用户账户,使用VERIFY_FUNCTION_11G函数对用户口令进行验证,最多只能建立5个数据库会话,每个会话持续连接到数据库的最长时间为60分钟,保持30分钟的空闲会话被自动断开,会话中每条SQL语句最多只能读取1000个数据块,会话中每条SQL语句最多占用100个单位的CPU时间。 SQLCREATE PROFILE tomProfile LIMIT SESSIONS_PER_USER 5 CPU_PER_SESSION UNLIMITED CPU_PER_CALL 100 CONNECT_TIME 60 IDLE_TIME 30 LAGICAL_READS_PER_SESSION UNLIMITED LAGICAL_READS_PER_CALL 1000 PASSWORD_LIFE_TIME 30 FAILED_LOGIN_ATTEMPTS 3 PASSWORD_VERIFY_FUNCTION VERIFY_FUNCTION_11G;,人民邮电出版社,18,10.3 用户配置文件管理,修改用户配置文件 【例10.7】下面的语句对PROFILE文件RESOURCE_LIMIT进行修改。 SQL ALTER PROFILE RESOURCE_LIMIT LIMIT CPU_PER_SESSION 15000 SESSIONS_PER_USER 5 CPU_PER_CALL 500 PASSWORD_LIFE_TIME 30 FAILED_LOGIN_ATTEMPTS 5;,人民邮电出版社,19,10.3 用户配置文件管理,删除用户配置文件 使用DROP PROFILE语句可以删除配置文件。如果要删除的配置文件已经被指定给了用户,则必须在DROP PROFILE语句中使用CASCADE关键字。 【例10.8】删除上面建立的配置文件tomProfile。 SQLDROP PROFILE tomProfile CASCADE;,人民邮电出版社,20,10.4 管理权限,权限是指执行特定类型SQL语句或访问另一用户的模式对象的权利。权限包括系统权限和对象权限2种类型。 1)系统权限:是指执行特定类型SQL语句或者在对象类型上执行一种特定动作的权利,它用于控制用户可以执行的一个或一组数据库操作。,人民邮电出版社,21,10.4 管理权限,权限 2)对象权限:是指访问其他模式对象(表、视图、序列、过程、函数和包)的权利,它用于控制用户对其他模式对象的访问。,人民邮电出版社,22,10.4 管理权限,管理系统权限 授予系统权限 GRANT 系统权限, 系统权限, TO 用户|角色|PUBLIC,用户|角色|PUBLIC WITH ADMIN OPTION; 撤销系统权限 REVOKE 系统权限, 系统权限, FROM 用户|角色|PUBLIC,用户|角色|PUBLIC,人民邮电出版社,23,10.4 管理权限,管理对象权限 授予对象权限 GRANT ALL PRIVILEGES |对象权限,对象权限, ON 模式名称.对象名称 TO 用户|角色|PUBLIC,用户|角色|PUBLIC WITH GRANT OPTION WITH HIERARCHY OPTION; 撤销对象权限的语法如下: REVOKE ALL PRIVILEGES |对象权限,对象权限, ON 模式名称.对象名称 FROM 用户|角色|PUBLIC,用户|角色|PUBLIC CASCADE CONSTRAINTS;,人民邮电出版社,24,10.5 管理角色,角色是具有名称的一组相关权限的组合,即将不同的权限组合在一起就成形成了角色。 可以使用角
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号