You are on page 1of 16

北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.

com

时代朝阳会员专区:Oracle 安全
Oracle 数据库基本安全实践
管理以 SYSDBA 和 SYSOPER 角色的访
问权限

工作目标
1 Oracle 数据库通过授予 2 个特殊的系统特权:SYSDBA 和 SYSOPER 来授予一个数据库管
理员执行基本的数据库操作所需要的管理特权。使用操作系统验证、口令文件验证对这 2
个管理特权进行验证。缺省状态下,数据库同时启用了口令文件验证和操作系统验证,操
作系统验证具有更高的优先级。禁用口令文件验证后,用户不能在客户端指定管理员用户
的用户名和口令以 SYSDBA 或 SYSOPER 角色来连接数据库,而只能通过使用操作系统验
证来以管理员特权登录数据库。本文将主要介绍禁用口令文件验证的方法,以及在
Windows 2003 环境下使用操作系统验证的方法。

目标实现概要
1 加强管理以 SYSDBA 或 SYSOPER 角色对数据库的访问,为用户授予这些角色前要慎重考
虑。
举例:查看当前 SYSDBA 和 SYSOPER 角色授予了哪些用户;授予、收回 SYSDBA 角色。
2 禁用口令文件验证:
如果使用口令文件来验证用户的 SYSDBA 或 SYSOPER 系统特权,则具有这些特权的用户
可以在客户端以 SYSDBA 或 SYSOPER 角色访问数据库。可以通过禁用口令文件的方
法(设置初始化参数 REMOTE_LOGIN_PASSWORDFILE=NONE 或删除口令文件)来禁
止用户使用 SYSDBA 或 SYSOPER 系统特权远程管理数据库。禁用口令文件后,只有可以
通过操作系统验证的用户才能执行 SYSDBA 或 SYSOPER 的数据库管理操作。
3 监控审计日志中记录的 SYSDBA,SYSOPER 角色的失败连接。
4 版本 1.0.0

时代朝阳会员专区 第 1 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

软硬件系统配置

配置说明:

1 操作系统:Windows Server 2003 Enterprise Edition SP1


2 数据库版本:Oracle10g 10.2.0.1.0
3 数据库用户名/口令:sys/w1jbxnncdzmfzdkl
3 数据库服务器端 主机名:winserv3
IP:192.168.3.117
4 数据库客户端 主机名:winserv2
IP:192.168.3.98

详细操作过程描述

授予、收回、查看 SYSDBA 和 SYSOPER 角色

1 查看当前 SYSDBA 和 SYSOPER 角色授予了哪些用户:

可知当前只有 SYS 用户被授予 SYSDBA 和 SYSOPER 系统特权。

2 授予 SCOTT 用户 SYSDBA 角色:

3 查看当前 SYSDBA 和 SYSOPER 系统特权的授权情况:

时代朝阳会员专区 第 2 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

4 收回 SCOTT 用户的 SYSDBA 角色:

禁用口令文件验证
1 查看当前口令文件的使用情况:

可知,此时初始化参数 REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE(缺省值),数据
库启用了口令文件来验证 SYSDBA 和 SYSOPER 特权。

2 在客户端 winserv2 上,测试此时能否通过输入用户名和口令以 SYSDBA 角色连接数据库:

时代朝阳会员专区 第 3 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

可见,在使用口令文件来验证用户的 SYSDBA 或 SYSOPER 系统特权时,具有这些特权的用


户(如本例中的 SYS)可以在客户端以 SYSDBA 角色管理数据库。

3 在客户端 winserv2 上,测试此时能否通过输入用户名和口令以 SYSOPER 角色连接数据库:

可见,在使用口令文件来验证用户的 SYSDBA 或 SYSOPER 系统特权时,具有这些特权的用


户(如本例中的 SYS)可以在客户端以 SYSDBA 角色管理数据库。

4 禁用口令文件验证。设置初始化参数 REMOTE_LOGIN_PASSWORDFILE=NONE,重启数
据库使修改生效:

时代朝阳会员专区 第 4 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

5 在客户端 winserv2 上,测试此时能否通过输入用户名和口令以 SYSDBA 角色连接数据库:

可见此时已经不能以 SYSDBA 角色从客户端登录访问数据库。

6 在客户端 winserv2 上,测试此时能否通过输入用户名和口令以 SYSOPER 角色连接数据库:

时代朝阳会员专区 第 5 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

可见此时已经不能以 SYSOPER 角色从客户端登录访问数据库。

7 选中“我的电脑”,点击右键,选择“管理”:

8 选择“系统工具”Æ“本地用户和组”Æ“组”,然后双击其中的“ora_dba”组,如下图所
示:

时代朝阳会员专区 第 6 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

9 可以看到 Oracle DBA 组的成员,如本环境中操作系统用户 Administrator 是 DBA 的成员:

时代朝阳会员专区 第 7 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

10 以 Administrator 用户登录服务器:

11 使用操作系统验证以 SYSDBA 角色访问数据库:

12 但由于此时服务器端没有设置 OPER 组及其用户,所以不能以 SYSDBA 角色访问数据库:

时代朝阳会员专区 第 8 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

13 如下图所示,使用 Administrator Assistant for Windows 工具来

14 可以查看“OS 数据库管理员”即 Oracle DBA 组有哪些操作系统用户:

15 选中“OS 数据库操作员”,点击右键,选择“添加/删除…”,向 Oracle OPER 组中添加成员:

时代朝阳会员专区 第 9 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

16 在域中选择服务器的主机名,如本环境中的 winserv3,在列出的用户中选中希望添加到 OPER


组中的操作系统用户,如 administrator,点击“添加”:

17 点击“确定”,完成添加:

时代朝阳会员专区 第 10 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

18 操作系统用户 administrator 可以使用操作系统验证,在服务器端以 SYSOPER 角色访问数据


库了:

时代朝阳会员专区 第 11 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

监控审计日志中记录的 SYSDBA,SYSOPER 角色的失败连接

1 查看关于审计的参数:

2 更改参数,audit_sys_operations=true,audit_trail=OS,启用审计:

3 重启数据库:

时代朝阳会员专区 第 12 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

4 查看修改后的初始化参数:

5 启用审计,监控操作系统审计日志中关于 SYSDBA 和 SYSOPER 连接失败的记录:

6 在客户端 winserv2 上连接数据库失败:

时代朝阳会员专区 第 13 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

7 查看 C:\oracle\product\10.2.0\admin\sdzy\adump\下的审计文件:

8 可以查看管理员用户登录失败的信息:

时代朝阳会员专区 第 14 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

体会与总结
1 在禁用口令文件后,只能使用操作系统验证来验证系统特权用户。每当要向操作系统中的
ORA_DBA 和 ORA_OPER 组中添加新用户时也要慎重考虑。

时代朝阳会员专区 第 15 页
www.zhaoyang-db.com/huiyuan