好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

安全管理【数据库基础教程】.ppt

122页
  • 卖家[上传人]:小**
  • 文档编号:54938385
  • 上传时间:2018-09-22
  • 文档格式:PPT
  • 文档大小:1.32MB
  • / 122 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第12章 安全管理,主要内容,Oracle数据库安全性概述 用户管理 权限管理 角色管理 概要文件管理 审计 利用OEM进行安全管理,本章要求,了解Oracle数据库安全机制 掌握用户管理 掌握权限管理 掌握角色管理 了解概要文件的作用及其应用 了解审计及其应用,12.1 数据库安全性概述,数据库的安全性主要包括两个方面的含义: 一方面是防止非法用户对数据库的访问,未授权的用户不能登录数据库; 另一方面是每个数据库用户只能进行自己权限范围内的操作 Oracle数据安全控制机制 用户管理 权限管理 角色管理 表空间设置和配额 用户资源限制 数据库审计,Oracle数据库的安全可以分为两类: 系统安全性 系统安全性是指在系统级控制数据库的存取和使用的机制,包括有效的用户名与口令的组合、用户是否被授权可连接数据库、用户创建数据库对象时可以使用的磁盘空间大小、用户的资源限制、是否启动了数据库审计功能,以及用户可进行哪些系统操作等 数据安全性 数据安全性是指在对象级控制数据库的存取和使用机制,包括用户可存取的模式对象和在该对象上允许进行的操作等12.2 用户管理,用户管理概述 创建用户 修改用户 删除用户 查询用户信息,(1)用户管理概述,Oracle数据库初始用户 SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典;SYSTEM:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。

      SCOTT:是一个用于测试网络连接的用户,其口令为TIGER PUBLIC:实质上是一个用户组,数据库中任何一个用户都属于该组成员要为数据库中每个用户都授予某个权限,只需把权限授予PUBLIC就可以了用户属性 用户身份认证方式 默认表空间 临时表空间 表空间配额 概要文件 账户状态,,用户身份认证方式 数据库身份认证:数据库用户口令以加密方式保存在数据库内部,当用户连接数据库时必须输入用户名和口令,通过数据库认证后才可以登录数据库 外部身份认证:当使用外部身份认证时,用户的账户由Oracle数据库管理,但口令管理和身份验证由外部服务完成外部服务可以是操作系统或网络服务当用户试图建立与数据库的连接时,数据库不会要求用户输入用户名和口令,而从外部服务中获取当前用户的登录信息 全局身份认证::当用户试图建立与数据库连接时,Oracle使用网络中的安全管理服务器(Oracle Enterprise Security Manager)对用户进行身份认证Oracle的安全管理服务器可以提供全局范围内管理数据库用户的功能默认表空间 当用户在创建数据库对象时,如果没有显式地指明该对象在哪个表空间中存储,系统会自动将该数据库对象存储在当前用户的默认表空间中。

      如果没有为用户指定默认表空间,则系统将数据库的默认表空间作为用户的默认表空间 临时表空间 当用户进行排序、汇总和执行连接、分组等操作时,系统首先使用内存中的排序区SORT_AREA_SIZE,如果该区域内存不够,则自动使用用户的临时表空间在Oracle 10g中,如果没有为用户指定临时表空间,则系统将数据库的默认临时表空间作为用户的临时表空间表空间配额 表空间配额限制用户在永久表空间中可以使用的存储空间的大小,默认情况下,新建用户在任何表空间中都没有任何配额 用户在临时表空间中不需要配额 概要文件 每个用户都必须有一个概要文件,从会话级和调用级两个层次限制用户对数据库系统资源的使用,同时设置用户的口令管理策略如果没有为用户指定概要文件,Oracle将为用户自动指定DEFAULT概要文件 账户状态 在创建用户的同时,可以设定用户的初始状态,包括用户口令是否过期以及账户是否锁定等Oracle允许任何时候对帐户进行锁定或解锁锁定账户后,用户就不能与Oracle数据库建立连接,必须对账户解锁后才允许用户访问数据库12.2.2.创建用户,基本语法 CREATE USER user_name IDENTIFIED [BY password|EXTERNALLY|GLOBALLYAS 'external_name'] [DEFAULT TABLESPACE tablespace_name] [TEMPORARY TABLESPACE temp_tablesapce_name] [QUOTA n K|M|UNLIMITED ON tablespace_name] [PROFILE profile_name] [PASSWORD EXPIRE] [ACCOUNT LOCK|UNLOCK];,,参数说明 user_name:用于设置新建用户名,在数据库中用户名必须是唯一的; IDENTIFIED:用于指明用户身份认证方式; BY password:用于设置用户的数据库身份认证,其中password为用户口令; EXTERNALLY:用于设置用户的外部身份认证; GLOBALLY AS'external_name':用于设置用户的全局身份认证,其中external_name为Oracle的安全管理服务器相关信息; DEFAULT TABLESPACE:用于设置用户的默认表空间,如果没有指定,Oracle将数据库默认表空间作为用户的默认表空间;,,TEMPORARY TABLESPACE:用于设置用户的临时表空间; QUOTA:用于指定用户在特定表空间上的配额,即用户在该表空间中可以分配的最大空间; PROFILE:用于为用户指定概要文件,默认值为DEFAULT,采用系统默认的概要文件; PASSWORD EXPIRE:用于设置用户口令的初始状态为过期,用户在首次登录数据库时必须修改口令; ACCOUNT LOCK:用于设置用户初始状态为锁定,默认为不锁定; ACCOUNT UNLOCK:用于设置用户初始状态为不锁定或解除用户的锁定状态,,注意 在创建新用户后,必须为用户授予适当的权限,用户才可以进行相应的数据库操作。

      例如,授予用户CREATE SESSION权限后,用户才可以连接到数据库 创建数据库用户示例 创建一个用户user3,口令为user3,默认表空间为USERS,在该表空间的配额为10 MB,初始状态为锁定 CREATE USER user3 IDENTIFIED BY user3 DEFAULT TABLESPACE USERS QUOTA 10M ON USERS ACCOUNT LOCK;,,创建一个用户user4,口令为user4,默认表空间为USERS,在该表空间的配额为10 MB口令设置为过期状态,即首次连接数据库时需要修改口令概要文件为example_profile(假设该概要文件已经创建) CREATE USER user4 IDENTIFIED BY user4 DEFAULT TABLESPACE USERS QUOTA 10M ON USERS PROFILE example_profile PASSWORD EXPIRE;,基本语法 ALTER USER user_name [IDENTIFIED] [BY password|EXTERNALLY|GLOBALLY AS 'external_name'] [DEFAULT TABLESPACE tablespace_name] [TEMPORARY TABLESPACE temp_tablesapce_name] [QUOTA n K|M|UNLIMITED ON tablespace_name] [PROFILE profile_name] [DEFAULT ROLE role_list|ALL [EXCEPT role_list] |NONE] [PASSWORD EXPIRE] [ACCOUNT LOCK|UNLOCK];,12.2.3 修改用户,,参数说明 role_list:角色列表; ALL :表示所有角色; EXCEPT role_list:表示除了role_list列表中的角色之外的其他角色; NONE:表示没有默认角色。

      注意,指定的角色必须是使用GRANT命令直接授予该用户的角色修改数据库用户示例 将用户user3的口令修改为newuser3,同时将该用户解锁 ALTER USER user3 IDENTIFIED BY newuser3 ACCOUNT UNLOCK; 修改用户user4的默认表空间为ORCLTBS1,在该表空间的配额为20 MB,在USERS表空间的配额为10 MB ALTER USER user4 DEFAULT TABLESPACE ORCLTBS1 QUOTA 20M ON ORCLTBS1 QUOTA 10M ON USERS;,,用户的锁定与解锁 某个用户暂时离开工作 某个用户永久离开工作 DBA创建的特殊用户帐户 示例 ALTER USER user3 ACCOUNT LOCK; ALTER USER user3 ACCOUNT UNLOCK;,12.2.4删除用户,基本语法 DROP USER user_name [ CASCADE ]; 步骤 先删除用户所拥有的对象 再删除用户 将参照该用户对象的其他数据库对象标志为INVALID,12.2.5查询用户信息,ALL_USERS:包含数据库所有用户的用户名、用户ID和用户创建时间。

      DBA_USERS:包含数据库所有用户的详细信息 USER_USERS:包含当前用户的详细信息 DBA_TS_QUOTAS:包含所有用户的表空间配额信息 USER_TS_QUOTAS:包含当前用户的表空间配额信息 V$SESSION:包含用户会话信息 V$OPEN_CURSOR:包含用户执行的SQL语句信息查看数据库所有用户名及其默认表空间 SELECT SERNAME,DEFAULT_TABLESPACE FROM DBA_USERS; 查看数据库中各用户的登录时间、会话号 SELECT SID,SERIAL#,LOGON_TIME,USERNAME FROM V$SESSION;,12.3 权限管理,权限管理概述 系统权限管理 对象权限管理 查询权限信息,12.3.1 权限管理概述,概念 所谓权限就是执行特定类型SQL命令或访问其他用户的对象的权利用户在数据库中可以执行什么样的操作,以及可以对哪些对象进行操作,完全取决于该用户所拥有的权限 分类 系统权限:系统权限是指在数据库级别执行某种操作的权限,或针对某一类对象执行某种操作的权限例如,CREATE SESSION权限、CREATE ANY TABLE权限。

      对象权限:对象权限是指对某个特定的数据库对象执行某种操作的权限例如,对特定表的插入、删除、修改、查询的权限授权方法 直接授权:利用GRANT命令直接为用户授权 间接授权:先将权限授予角色,然后再将角色授予用户12.3.2系统权限管理,系统权限分类 系统权限的授权 系统权限的回收,(1)系统权限分类,一类是对数据库某一类对象的操作能力,通常带有ANY关键字例如,CREATE ANY INDEX,ALTER ANY INDEX,DROP ANY INDEX 另一类系统权限是数据库级别的某种操作能力例如,CREATE SESSION2)系统权限的授权,语法为 GRANT sys_priv_list TO user_list|role_list|PUBLIC [WITH ADMIN OPTION]; 参数说明: sys_priv_list:表示系统权限列表,以逗号分隔; user_list:表示用户列表,以逗号分隔; role_list:表示角色列表,以逗号分隔; PUBLIC:表示对系统中所有用户授权; WITH ADMIN OPTION:表示允许系统权限接收者再把此权限授予其他用户。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.