2013-06-24 11:41:56 来源:互联网
对电信企业而言,数据库安全至关重要。试想充值系统出了问题会怎样?手机用户在月末查询账单的时候系统出现问题会怎样?下面是某电信企业数据库运维人员在数据库安全方面的一些心得。
一、数据库版本与组件选择
1. 对数据库使用较高、较稳定的数据库版本,避免一些BUG触发引发的业务影响,比如一个ORA-04031,引发了结算系统share_pool的错,导致应用程序链接失败。
2. 建库的时候,明确生产数据库所需要使用的Oracle组件,只选择满足使用环境的最小组件集。
二、表管理
1. 备份表、临时表,规范化模式管理。
2. 使用独立的模式存储独立的业务对象。
3. DDL创建备份或临时对象说明变更管理存在风险,需要强化变更管理。
4. 一个schema中,存储的都是为完成某一个系统或模块而设计的表,不能将其他用途的数据表混合存储在该schema下。
5. 将临时表、备份表进行独立的schema存储管理,分离备份表和临时表,同时能够避免对业务数据存储造成空间碎片和性能影响,从而能够有效的降低数据备份和清理操作对业务运行的影响。
三、用户权限安全
1. 对于绝无必要的用户,清理出数据库。如用户Scott为Oracle的测试用户,在生产环境中,应该删除该用户及其相关对象,或者将其转移到测试环境中。
2. 对于已经被 LOCKED 的Oracle内置用户,我们需要评估是否在生产环境中使用,如果不需要使用,则可删除相关组件和用户。
3. 严格用户角色管理,防止权限授予过高,收回用户所具有的 resource 角色,创建权限限制更加严格的自定义角色。
4. 收回用户中不需要的角色。
四、访问安全
1. 规范数据库管理软件,实现管理软件的标准、统一化。
2. 为了防止连入数据库的应用程序存在后门,造成数据库安全隐患,检查所有连接数据库程序的安全性。通过使用门户监控登录数据库,禁止对数据库的直接操作。
3. 对已经连接的IP网段进行规范化、统一化的管理,每季度进行权限复核操作,对系统所属IP、用户进行权限梳理工作。对员工进行安全培训,增强员工的系统安全观念,做到细心操作。
4. 确认访问数据库的主机是否为已知用户,使用专门进行维护用的主机与数据库进行连接,禁止使用公用dblink对数据库直接操作。系统维护人员在某一天接到投诉,发现一个表下面的列少了,还好是一个状态列,先手动insert进去,随后找原因,发现是因为应用人员用dblink链接测试库时候,链接到了生产库中。由此可见数据库安全是多么重要。
5.审计 SYSDBA 的操作行为。
6.对重要业务表的查询等行为,全部进行审计。
五、备份安全
1.建立备份机制,对于关键业务的系统搭建NBU、DP、DSG等备份管理软件,针对业务情况、系统压力、带库资源等创建合适的备份策略,本单位都是在闲时每周做一次全备,一天一个增备,且操作系统有crontab或者是自带磁带备份主要目录。
2.对于关键业务系统可以使用当前主流容灾软件技术Oracle Goldengate、DG、Quest Shareplex等,在业务高峰期,比如我们系统账期业务较忙,CPU idle每天1%或者0%。那么这个时候就有必要考虑使用同步复制创建备机,将账期业务迁移至备库,不影响主库的业务。
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。