文档介绍:第13章安全性管理
本章概述
本章的学习目标
主要内容
1
本章概述
安全性是衡量数据库产品性能的重要指标。本章介绍Oracle 11g数据库的安全管理机制,内容包括用户管理,权限管理,角色管理,数据库审计等。
2
本章的学习目标:
●了解用户、权限、角色的概念及作用
●学会创建、修改、删除用户
●学会将系统权限和对象权限授予用户,以及回收权限
●学会使用系统预定义角色,学会创建自定义角色,以及角色权限的授予和回收
●了解数据库审计的概念及作用
3
主要内容
概述
用户管理
权限管理
角色管理
4
安全性在数据库管理中占据重要的位置,没有完善的安全机制的保护,可能会导致数据的泄露、损坏或丢失,因此安全性一直是数据库产品性能的重要衡量指标之一。Oracle数据库的安全管理是从用户登录数据库就开始的。数据库访问的安全性主要包括两个方面的含义:一是阻止未授权用户访问数据库;二是每个数据库用户都有不同的操作权限,用户在数据库中的操作将被限制在其权限范围内。
在Oracle数据库中,用户的身份通常被划分为数据库管理员和开发人员,其中数据库管理员承担管理数据库的责任,包括安全性管理、调优、备份策略的制定、数据库出现故障时的数据恢复、保证数据库的可用性等。软件系统的开发人员作为数据库管理员之外的一类使用者,承担软件开发的职责,对数据库的访问要求及技能掌握要求比数据库管理员低,他们需要熟练掌握的SQL及PL/SQL的操作技能,能够快速及高效率地完成对数据库的操作需求,对调优和备份恢复等操作通常不参与。所以,数据库的安全管理通常属于数据库管理员的职责,DBA可以通过管理用户、角色以及权限来控制数据库的安全。但对于软件开发人员来说,掌握一些安全机制及处理方式也是有必要的。
5
主要内容
概述
用户管理
权限管理
角色管理
6
用户管理
用户是数据库的使用者和管理者,用户管理是Oracle数据库安全管理的核心和基础。每个连接到数据库的用户都必须是系统的合法用户,用户要想使用Oracle的系统资源(查询数据、创建表等),就必须要拥有相应的权限。
Oracle数据库的用户管理包括创建用户、修改用户的安全参数、删除用户和查询用户信息等。
7
初始用户
在创建Oracle数据库时会自动创建一些用户,例如SYS、SYSTEM、SCOTT等,除了SYS、SYSTEM这两个初始合法的管理员,其余用户在创建后处于锁定状态,需要在安装时或者安装后对其解锁并重新设定口令。这些初始用户有其自身的职责和特点,软件项目一般不建议使用这些初始用户。即针对不同的项目,应该由管理员分配不同的用户,在开发过程中,SCOTT用户可以用来测试数据库的可用性。
l SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典。
l SYSTEM:是辅助数据库管理员,不能启动和关闭数据库,可以进行一些其他的管理工作,例如创建用户、删除用户等。
l SCOTT:数据库的测试用户,默认口令为tiger。在该用户下已经创建了一些数据表,用于用户学习及测试网络连接,包括:EMP表、DEPT表等。
8
相关属性
和用户相关的属性包括以下几种。
(1)用户身份认证方式
在用户连接数据库时,必须经过身份认证。Oracle数据库用户有3种身份认证。
数据库身份认证:这种方式即用户名/口令方式,用户口令以加密方式保存在数据库内部,用户连接数据库时必须输入用户名和口令,通过数据库认证后才能登录数据库。这是默认的认证方式。
外部身份认证:用户账户由Oracle数据库管理,但口令管理和身份验证由外部服务完成,外部服务可以是操作系统或网络服务。当用户试图建立与数据库的连接时,数据库不会要求用户输入用户名和口令,而从外部服务中获取当前用户的登录信息。这种方式比较适合在局域网环境下,连接简单,不需要提供用户名和口令,但是需要在创建用户时做一些相应的配置。
9
全局身份认证:当用户试图建立与数据库的连接时,Oracle使用网络中的安全管理服务器(Oracle Enterprise Security Manager)对用户进行身份认证。和外部身份认证相同,用户账户由数据库管理,但Oracle不保存口令,当用户登录时,需要通过网络服务验证。Oracle的安全管理服务器可以提供全局范围内管理数据库用户的功能。
(2)表空间配额
表空间配额限制用户在永久表空间中可用的存储空间大小,默认情况下,新用户在任何表空间中都没有任何配额。用户