第12章安全管理
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
13
2011
Oracle 10g数据库基础教程
TEMPORARY TABLESPACE:用于设置用户的临时表空间; QUOTA:用于指定用户在特定表空间上的配额,即用户在该表 空间中可以分配的最大空间; PROFILE:用于为用户指定概要文件,默认值为DEFAULT, 采用系统默认的概要文件; PASSWORD EXPIRE:用于设置用户口令的初始状态为过期, 用户在首次登录数据库时必须修改口令; ACCOUNT LOCK:用于设置用户初始状态为锁定,默认为不 锁定; ACCOUNT UNLOCK:用于设置用户初始状态为不锁定或解除 用户的锁定状态
12
2011
Oracle 10g数据库基础教程
参数说明
user_name:用于设置新建用户名,在数据库中用户名必须是 唯一的; IDENTIFIED:用于指明用户身份认证方式; BY password:用于设置用户的数据库身份认证,其中 password为用户口令; EXTERNALLY:用于设置用户的外部身份认证; GLOBALLY AS'external_name':用于设置用户的全局身 份认证,其中external_name为Oracle的安全管理服务器相 关信息; DEFAULT TABLESPACE:用于设置用户的默认表空间,如果 没有指定,Oracle将数据库默认表空间作为用户的默认表空间;
17
2011Байду номын сангаас
Oracle 10g数据库基础教程
12.2.3 修改用户
基本语法
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];
ALTER USER user4 DEFAULT TABLESPACE ORCLTBS1 QUOTA 20M ON ORCLTBS1 QUOTA 10M ON USERS;
20
2011
Oracle 10g数据库基础教程
用户的锁定与解锁
某个用户暂时离开工作 某个用户永久离开工作 DBA创建的特殊用户帐户 ALTER USER user3 ACCOUNT LOCK; ALTER USER user3 ACCOUNT UNLOCK;
18
2011
Oracle 10g数据库基础教程
参数说明
role_list:角色列表; ALL :表示所有角色; EXCEPT role_list:表示除了role_list列表中的角 色之外的其他角色; NONE:表示没有默认角色。
注意,指定的角色必须是使用GRANT命令直接授 予该用户的角色。
3
2011
Oracle 10g数据库基础教程
12.1 数据库安全性概述
数据库的安全性主要包括两个方面的含义:
一方面是防止非法用户对数据库的访问,未授权的用 户不能登录数据库; 另一方面是每个数据库用户都有不同的操作权限,只 能进行自己权限范围内的操作。 用户管理 权限管理 角色管理 表空间设置和配额 用户资源限制 –-通过概要文件 数据库审计-- 监视和记录用户在数据库的活动
2011
Oracle 10g数据库基础教程
创建一个用户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;
示例
21
2011
Oracle 10g数据库基础教程
12.2.4删除用户
基本语法
DROP USER user_name [ CASCADE ]; 先删除用户所拥有的对象 再删除用户 将参照该用户对象的其他数据库对象标志为INVALID
步骤
22
2011
Oracle 10g数据库基础教程
12.2.5查询用户信息
ALL_USERS:包含数据库所有用户的用户名、用户ID和 用户创建时间。 DBA_USERS:包含数据库所有用户的详细信息。 USER_USERS:包含当前用户的详细信息。 DBA_TS_QUOTAS:包含所有用户的表空间配额信息。 USER_TS_QUOTAS:包含当前用户的表空间配额信息。 V$SESSION:包含用户会话信息。 V$OPEN_CURSOR:包含用户执行的SQL语句信息。
Oracle数据安全控制机制
4
2011
Oracle 10g数据库基础教程
Oracle数据库的安全可以分为两类:
系统安全性
系统安全性是指在系统级控制数据库的存取和使用的机制: 包括有效的用户名与口令的组合、 用户是否被授权可连接数据库、 用户创建数据库对象时可以使用的磁盘空间大小、 用户的资源限制、 是否启动了数据库审计功能, 以及用户可进行哪些系统操作等。 数据安全性是指在对象级控制数据库的存取和使用机制,包括 用户可存取的模式对象和在该对象上允许进行的操作等。
7
2011
Oracle 10g数据库基础教程
用户属性 用户身份认证方式 默认表空间 临时表空间 表空间配额 概要文件 账户状态
8
2011
Oracle 10g数据库基础教程
用户身份认证方式 数据库身份认证:当用户连接数据库时必须输入用 户名和口令。 外部身份认证:用户的账户由Oracle数据库管理, 但口令管理和身份验证由外部服务完成。外部服务 可以是操作系统或网络服务。 全局身份认证:Oracle使用网络中的安全管理服务 器(Oracle Enterprise Security Manager)对用 户进行身份认证。Oracle的安全管理服务器可以提 供全局范围内管理数据库用户的功能。
19
2011
Oracle 10g数据库基础教程
修改数据库用户示例
将用户user3的口令修改为newuser3,同时将该用户 解锁。
ALTER USER user3 IDENTIFIED BY newuser3 ACCOUNT UNLOCK;
修改用户user4的默认表空间为ORCLTBS1,在该表 空间的配额为20 MB,在USERS表空间的配额为10 MB。
2011
Oracle 10g 数据库基础教程
第12章 安全管理
2011
Oracle 10g数据库基础教程
主要内容
Oracle数据库安全性概述 用户管理 权限管理 角色管理 概要文件管理 审计 利用OEM进行安全管理
2
2011
Oracle 10g数据库基础教程
本章要求
了解Oracle数据库安全机制 掌握用户管理 掌握权限管理 掌握角色管理 了解概要文件的作用及其应用 了解审计及其应用
概要文件
账户状态
2011
Oracle 10g数据库基础教程
12.2.2.创建用户
基本语法
CREATE 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] [PASSWORD EXPIRE] [ACCOUNT LOCK|UNLOCK];
23
2011
Oracle 10g数据库基础教程
查看数据库所有用户名及其默认表空间。
SELECT USERNAME,DEFAULT_TABLESPACE FROM DBA_USERS; SELECT SID,SERIAL#,LOGON_TIME,USERNAME FROM V$SESSION;
9
2011
Oracle 10g数据库基础教程
默认表空间
当用户在创建数据库对象时,如果没有显式地指明该对象在哪 个表空间中存储,系统会自动将该数据库对象存储在当前用户 的默认表空间中。如果没有为用户指定默认表空间,则系统将 数据库的默认表空间作为用户的默认表空间。 当用户进行排序、汇总和执行连接、分组等操作时,系统首先 使用内存中的排序区SORT_AREA_SIZE,如果该区域内存不 够,则自动使用用户的临时表空间。在Oracle 10g中,如果 没有为用户指定临时表空间,则系统将数据库的默认临时表空 间作为用户的临时表空间。
临时表空间
10
2011
Oracle 10g数据库基础教程
表空间配额
表空间配额限制用户在永久表空间中可以使用的存储空间的大 小,默认情况下,新建用户在任何表空间中都没有任何配额。 用户在临时表空间中不需要配额。 每个用户都必须有一个概要文件,从会话级和调用级两个层次 限制用户对数据库系统资源的使用,同时设置用户的口令管理 策略。如果没有为用户指定概要文件,Oracle将为用户自动 指定DEFAULT概要文件。 在创建用户的同时,可以设定用户的初始状态,包括用户口令 是否过期以及账户是否锁定等。Oracle允许任何时候对帐户 进行锁定或解锁。锁定账户后,用户就不能与Oracle数据库 11 建立连接,必须对账户解锁后才允许用户访问数据库。
创建数据库用户示例
CREATE USER user3 IDENTIFIED BY user3 DEFAULT TABLESPACE USERS QUOTA 10M ON USERS ACCOUNT LOCK;
15
2011
Oracle 10g数据库基础教程
查看用户scott的权限
将创建视图的权限授予用户scott
查看数据库中各用户的登录时间、会话号。
24
2011
Oracle 10g数据库基础教程
12.3 权限管理
权限管理概述 系统权限管理 对象权限管理 查询权限信息
5
数据安全性
2011
Oracle 10g数据库基础教程
12.2 用户管理
用户管理概述 创建用户 修改用户 删除用户 查询用户信息
6
2011
Oracle 10g数据库基础教程
(1)用户管理概述
Oracle数据库初始用户
SYS:是数据库中具有最高权限的数据库管理员,可 以启动、修改和关闭数据库,拥有数据字典; SYSTEM:是一个辅助的数据库管理员,不能启动和 关闭数据库,但可以进行其他一些管理工作,如创建 用户、删除用户等。 SCOTT:是一个用于测试网络连接的用户,其口令为 TIGER。 PUBLIC:实质上是一个用户组,数据库中任何一个 用户都属于该组成员。要为数据库中每个用户都授予 某个权限,只需把权限授予PUBLIC就可以了。
14
2011
Oracle 10g数据库基础教程
注意
在创建新用户后,必须为用户授予适当的权限,用户 才可以进行相应的数据库操作。例如,授予用户 CREATE SESSION权限后,用户才可以连接到数据 库。 创建一个用户user3,口令为user3,默认表空间为 USERS,在该表空间的配额为10 MB,初始状态为 锁定。