浅谈数据库安全技术设置

(整期优先)网络出版时间:2020-11-02
/ 2

浅谈数据库安全技术设置

张桂娟

大庆油田有限责任公司第五采油厂信息中心


摘要:目前Oracle作为主流数据库,在各个行业应用广泛,随着信息安全技术开发,其数据库安全问题受到关注,本文主要以Oracle数据库为例,分别从系统安全、管理安全两个方面描述Oracle系统安全技术的应用。

关键字:Oracle数据库安全

0 引言

Oracle数据库以其优异性能、高效速度等特点被许多企业所使用。虽然Oracle数据库系统有着极高的安全级别,但依然存在被破坏的可能性,造成数据丢失,甚至数据库系统崩溃等情况,非法入侵导致数据库中存储的数据泄露、被篡改。如何提高数据库的安全,防止数据库中数据被窃取、篡改或者删除,成为数据管理员所关心的问题。 

1 安全

数据库安全主要是操作系统和数据库系统的安全,系统软件的安装是否完整、管理行为是否得当、数据备份策略是否完善,能否应对突发情况等。

2 系统安全

系统安全包括数据库所在操作系统安全,大多数系统是Windows以及Unix、Linux系统,尽量选择相对较高的系统版本进行安装;此外还需关注公司发布的系统补丁,对存在的安全漏洞及时进行补丁修复或系统升级处理。

系统设置只允许管理员进行远程登录,防火墙入站规则和出站规则进行设置,设置只有信任的IP地址才能访问数据库特定端口,关闭多余端口,出站只添加要访问的服务器的IP地址。windows操作系统进行本地组策略设置,如账号密码15位以上,锁定时间30分钟、6次无效登录等设置。Unix、Linux等系统设置/etc/hosts.allow,只允许单一主机IP进行远程登录,/etc/hosts.deny 拒绝所有IP登录。

3管理安全

管理安全指数据库系统日常运维中的安全,分为IP限制、访问审计、用户管理、备份恢复等。

3.1 IP限制

通过IP地址访问安全设置,事先将要访问的IP确定下来,存储在数据表中,编写数据库触发器进行设置,客户端登录时,只有在数据表中的IP才能登录,同时进行操作系统级TNS限制登录,在sqlnet.ora文件中配置IP访问白名单,重启监听器生效后,非白名单内IP无法访问数据库。每次添加IP都要进行三方面设置。如此形成三层IP控制安全防护,访问数据库的IP必须同时满足防火墙、tns、数据库三个条件,才被允许访问。

3.2访问设计

审计(Audit)用于监视用户所执行的数据库操作,目的在于监视和收集相关数据库活动数据,审查操作,如用户多次使用错口令尝试登录,用户非法或错误删除正常数据等。数据库管理员可通过审计数据,快速查找异常情况源头,及时做出反应。

审计记录可存在数据字典表(称为审计记录:存储在system表空间中的SYS.AUD$表中,可通过视图dba_audit_trail查看),由于数据表占用空间较多,将其移动到新建立的aud审计空间中,同时审计开启。根据实际需要开启部分审计功能。如开启登录操作审计、特定操作审计等,记录全部或特定用户(如DBA用户)的登录时间、地址信息,或记录对某个数据表的更新、删除操作。

3.3用户管理

建立用户,设置表空间,严格管理权限,遵循最小化权限原则。锁定无用非活动用户,强化口令管理。在Oracle数据库中,对用户的资源限制与用户口令管理是通过数据库概要文件(PROFILE)实现的,Oracle概要文件用于数据库口令管理的主要参数如下:

  1. FAILED_LOGIN_ATTEMPTS:限制用户失败次数,一旦达到失败次数,账户锁定,设置为6-10次,防止非法用户多次尝试口令进入数据库。

  2. PASSWORD_LOCK_TIME:用户登录失败后,账户锁定的时间长度,单位为天,为避免DBA手工干预设置为1,用户登录失败锁定后,24小时自动解锁。

  3. PASSWORD_LIFE_TIME:用户口令的有效天数,达到设定天数后,口令过期,需要重新设置新的口令,这个可以根据需要进行设置。

  4. PASSWORD_VERIFY_FUNCTION:设置Oracle口令的复杂度要求,建立的用户口令都是15位以上,必须是大小写字母、数字和特殊字符结合,而且都是随机生成的,增加口令破解难度。开启设置,如果用户到期后口令修改不符合要求,不予通过。

(5)PASSWOR_REUSE_TIME和PASSWORD_REUSE_MAX设置,这两个参数是同时使用的。PASSWORD_REUSE_TIME指密码在多少天之后才可以被重用,PASSWORD_REUSE_MAX指密码在修改多少次之后才可以重用。这两个参数用于防止多次修改相同口令而导致弱口令的产生。

3.4备份恢复

根据数据应用情况及时性要求,进行的数据备份可以分为实时备份与定时备份、主动备份与被动备份,每天运用作业进行定时备份,同时做好异地备份,在异地建立同样的数据环境,定期进行备份、恢复,在进行关键数据表修改前进行临时备份,出现数据丢失或误操作情况,能及时进行数据恢复。

3 结论

Oracle作为成熟的数据库系统,拥有自己的一套数据安全防护技术,本文从数据库系统管理及应用方面介绍了具体的技术应用,但仍需要我们在平时使用管理过程中,用户提升日常安全防护意识,做到密码不泄露,应用系统中使用的用户、口令进行加密,不通过网络发送用户明文口令,不随意安装软件等,以保证数据库系统的安全高速运转。

参考文献

  1. Oracle 数据库精讲与疑难解析,赵振平

  2. 哈尔滨石化LIMS系统数据库迁移和优化方案设计与实施 许萍《中国管理信息化》2016

作者简介:张桂娟 :女,1970年10月11日出生,籍贯黑龙江人,现在采油厂从事数据管理工作,高级工程师。