暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

系统安全策略篇-ORACLE数据库安全建议

新意客服中心 2021-07-19
2306


背景

系统运行安全一直是运维小伙伴关注的重点,

在陆续介绍了WEB层面与LINUX的安全配置后,

本期为大家提供ORACLE数据库安全策略作为运维参考。



一、 ORACLE系统安全策略说明

1.可以通过设置ORACLE用户密码复杂度,提高访问系统验证的安全性。

2.可以通过开启或关闭密码有效期限制,提高密码管理的安全性。

3.可以通过设置ORACLE登录失败锁定策略与时长,降低恶意的密码猜测等攻击行为带来的风险。

4.可以通过对ORACLE用户访问IP进行限定,预防非授权的数据库访问。

5.可以通过开户审计功能记录数据库的操作,监控数据库访问和应对审计检查等工作。


二、启用策略前的建议

1.一些策略启用后需要定期进行维护操作,需要结合公司运维策略判断是否可行。

2.启用密码复杂度、访问IP设置等,需充分梳理访问数据库的JBOSS、TASKSEVER、DBLINK连接、外围访问数据库等所有程序,评估是否可修改连接密码等信息,避免启用后无法访问影响正常业务。


三、参数设置说明



1. ORCLE用户密码复杂度设置

作用:设置ORACLE用户密码设置复杂度,口令长度至少8位,包括数字、小写字母、大写字母三种类型的组合。

设置:

(1)查看参数:

select limit from dba_profiles where resource_name='PASSWORD_VERIFY_FUNCTION' and profile in (select profile from dba_users where account_status='OPEN');

--取值不是verify_function代表此参数还没修改

(2)修改resource_limit参数:alter system set resource_limit = true;

(3)生成口令复杂度函数:@$ORACLE_HOME/rdbms/admin/utlpwdmg.sql

(4)修改参数:alter profile default limit password_verify_function verify_function;

#取消Oracle密码复杂度检查:alter profile default limit password_verify_function null;


2. ORACLE用户密码有效期设置

作用:设置密码有效期强制用户在指定天数内修改密码,否则进行警告后,锁定用户。

注:开启密码有效期,需要建立在相应间隔期限内关注修改密码的策略,否则会引起锁定后系统无法访问的风险,若无法做到则建议关闭。

设置:

(1)检查现有策略语句:Select * FROM dba_profiles s Where s.profile='DEFAULT' AND

 resource_name='PASSWORD_LIFE_TIME'; 

--若结果为某个天数如180天,说明在180天内需要修改一次数据库用户密码,若为UNLIMITED则没有限制

(2)设置策略(以设置无限制为例):ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED



3、ORACLE用户登录失败锁定与时长限制


作用:设定用户登录时密码输错多少次后进行锁定,不能再登录,以及锁定多久后解锁。

设置:用DBA权限身份登录,执行以下操作

sqlplus "/ as sysdba"

SQL> @utlpwdmg.sql

SQL>ALTER PROFILE "DEFAULT" LIMIT FAILED_LOGIN_ATTEMPTS 6 PASSWORD_LOCK_TIME 1 PASSWORD_VERIFY_FUNCTION DEFAULT;

-- FAILED_LOGIN_ATTEMPTS 登录失败尝试次数

-- PASSWORD_LOCK_TIME 登录失败锁定天数

4. ORACLE用户访问的IP设置

作用:设置可访问/不能访问连接数据库的机器IP。

设置:在服务器端的 

$ORACLE_HOME/network/admin/sqlnet.ora中增加

tcp.validnode_checking=yes

#允许访问的IP

tcp.invited_nodes=(ip1,ip2……)  

#禁止访问的IP 

tcp.excluded_nodes=(ip1,ip2……) 


5. ORACLE用户审计策略


作用:可以设置数据库操作是否记录,记录在数据库表中还是操作系统文件中。

注:开启审计后,需要配套定期截断清理的策略,否则在数据库中会造成SYSTEM表空间不断增长,无法自动扩展或撑爆了数据文件、磁盘限制;在操作系统中则造成LINUX结点数量超过限制;均容易引起数据库无法正常访问。

设置:

SQL> sqlplus as sysdba

SQL> alter system set audit_sys_operations=TRUE scope=spfile

SQL> alter system set audit_trail=db scope=spfile;

SQL> shutdown immediate

SQL> startup

--audit_trail参数值的简化说明

DB:默认值,表示启动审计,信息写入SYS.AUD$数据字典中

OS:表示启动审计功能,审计信息写入操作系统文件。

NONE:表示不启动审计功能。



关于安全策略的配置,后续还会不定期更新推出,新意将尽力为客户的系统安全保驾护航,有关配置使用的疑问可拔打新意客服热线‘0592-8015566’咨询。


往期回顾

新意系统安全策略篇—访问安全配置
新意系统安全策略篇—用户安全登录


文章转载自新意客服中心,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论