Oracle数据库安全配置标准

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

XX公司

Oracle数据库安全配置标准(试行)

1 目的

为保证公司应用系统的信息安全,规范数据库层面的安全配置操作,制定本标准。

2 范围

本标准适用于公司各个业务系统中使用的Oracle 10g及以上数据库系统。

3 安全配置标准

3.1安装数据库的主机要求

●主机应当专门用于数据库的安装和使用;

●数据库主机避免安装在域控制器上;

●硬件要求请参考Oracle 10g及以上各发行版自带的发行说明;

●主机操作系统层面应当保证安全:Oracle数据库可以安装在Windows Server,Linux,及各类Unix系统上,数据库软件安装之前,应当保证主机操作系统层面的安全,需要对主机进行安全设置,补丁更新,防病毒软件安装等。

3.2数据库补丁安装标准

日常运行维护中如果Oracle推出新的补丁,则应按照《基础平台运维管理办法》的相关规定,在进行评估、验证之后,升级相关补丁。

3.3数据库口令安全配置标准

3.3.1 密码复杂性配置要求

1.密码长度至少为8位

2.必须为DBA帐户和普通帐户提供复杂的口令,需要包含以下字符:

⏹英语大写字母 A, B, C, … Z

⏹英语小写字母 a, b, c, … z

⏹西方阿拉伯数字 0, 1, 2, (9)

⏹非字母数字字符,如标点符号,@, #, $, %, &, *等

⏹为用户建profile,调整PASSWORD_VERIFY_FUNCTION,对密码负载度进行设置:

3.3.2 创建应用账号并授权

创建用户:

SQL>create user username identified by password;

基本授权:

SQL>grant connect,resource to username;

创建表空间:

SQL>create tablespace tablespace_name datafile ‘/home/oracle/tablespace_name.dbf’size 500m;

用户与表空间对应:

SQL>alter user username default tablespace tablespace_name;

3.3.3 禁用不必要的数据库帐户

针对每个数据库里的数据库帐号,确保没有测试帐号和无用的帐号存在。如果存在,应该及时禁用。

使用如下语句查看数据库账号,并锁定不必要的账号

SQL> select username,password,account_status,default_tablespace from dba_users;

SQL> alter user test account lock;

3.3.4 修改数据库缺省用户的初始密码

在数据库安装时,应对数据库缺省用户的初始密码及时进行修改。

3.3.5 禁止操作系统与数据库间的单点登录

除软件系统管理用户(如oracle,grid,splex)外不允许拥有command line的操作系统用户绕过数据库安全设置而直接访问数据库,即不允许其余用户加入到dba组中。

3.3.6 强制新用户登录时更改密码

对于新增的数据维护用户,在系统中设置自动控制强制首次登陆修改密码,操作命令如下:alter user username password expire;

3.4目录和文件安全标准

3.4.1 数据库安装文件系统要求

数据库软件应当安装在支持权限分配的分区文件系统上(如NTFS,EXT3等)。

3.4.2 目录保护配置要求

受保护的目录如下表所示:

对于control file的配置,要求数据库有2套或以上的Control file配置,以保证数据库的高安全性。

3.4.4 数据库重做日志的配置要求

对于数据库redo log的配置,要求按照至少3组或以上的redo log,每组redo log含2个或以上的成员进行配置。

3.5监听器安全配置标准

3.5.1 设置监听器密码

通过设置监听器密码可以阻止大部分的菜鸟黑客的进攻,设置密码有两种方法,一种是通过lsnrctl命令来设置,另一种是直接修改listener.ora文件,第一种方法设置的密码是经过加密后存储在listener.ora中,而第二种方法是以明文的形式放在listener.ora中的,所以推荐使用第一种方式。具体命令如下:

LSNRCTL>set current_listener <监听器名>

LSNRCTL>change_password

old password: <如果之前没有设置密码就直接按回车>

New password: <输入新密码>

Reenter new password: <再次输入新密码>

LSNRCTL>set password

Password: <输入刚刚设置的新密码>

LSNRCTL>save_config

设置好密码后,打开listener.ora,看是否有一条PASSWORDS_<监听器名>的记录,类似于PASSWORDS_LISTENER = F4BAA4A006C26134。为监听器设置了密码后,必须到客户端重新配置连接。

上面的操作只适用于oracle 9i及以前的版本,Oracle10g以后,设置Listener密码已经不是安全检查的必要条件了,因为默认在10g里面除了启动监听的用户之外,其它用户都无法停止Listener(还有另外一些lsnrctl的命令也同样被禁止了,比如trace, reload等),即使Listener没有设置密码,因此对于Oracle10g及以上版本可不设置监听器密码。

3.5.2 开启监听器日志

开启监听器日志功能是为了捕获监听器命令和防止密码被暴力破解。开启监听器日志功能的命令为:

LSNRCTL>set current_listener <监听器名>

LSNRCTL>set password

Password: <输入监听器密码>

LSNRCTL>set log_directory /network/admin

LSNRCTL>set log_file .log

LSNRCTL>set log_status on

相关文档
最新文档