《北大青鸟深圳嘉华与你一起探讨Oracle数据库安全问题(下)》要点:
本文介绍了北大青鸟深圳嘉华与你一起探讨Oracle数据库安全问题(下),希望对您有用。如果有疑问,可以联系我们。
前面一篇我们讲了一部分Oracle数据库平安内容,这里继续讲述,分别从建立平安性策略方面系统讲述.
系统平安性策略
(1)管理数据库用户:数据库用户是访问Oracle数据库信息的途径,因此,应该很好地维护管理数据库用户的平安性.按照数据库系统的大小和管理数据库用户所需的工作量,数据库平安性管理者可能只是拥有create,alter,或drop数据库用户的一个特殊用户,或者是拥有这些权限的一组用户,应注意的是,只有那些值得信任的个人才应该有管理数据库用户的权限.
(2) 用户身份确认:数据库用户可以通过操作系统,网络服务,或数据库进行身份确认,通过主机操作系统进行用户身份认证的长处有:
A 用户能更快,更便利地联入数据库;
B 通过操作系统对用户身份确认进行集中控制:如果操作系统与数据库用户信息一致,Oracle无须存储和管理用户名以及暗码;
C 用户进入数据库和操作系统审计信息一致.
(3) 操作系统平安性
A 数据库管理员必需有create和delete文件的操作系统权限;
B 一般数据库用户不该该有create或delete与数据库相关文件的操作系统权限;
C 如果操作系统能为数据库用户分配角色,那么平安性管理者必须有修改操作系统帐户平安性区域的操作系统权限.
数据的平安性策略:
数据的生考虑应基于数据的重要性.如果数据不是很重要,那么数据的平安性策略可以稍稍放松一些.然而,如果数据很重要,那么应该有一谨慎的平安性策略,用它来维护对数据对象访问的有效控制.
用户平安性策略:
(1) 一般用户的平安性:
A 密码的平安性:如果用户是通过数据库进行用户身份的确认,那么建议使用密码加密的方式与数据库进行连接.这种方式的设置方法如下:
在客户端的oracle.ini文件中设置ora_encrypt_login数为true;
在服务器端的initORACLE_SID.ora文件中设置dbling_encypt_login参数为true.
B 权限管理:对于那些用户很多,应用程序和数据对象很丰富的数据库,应充分利用“角色”这个机制所带的便利性对权限进行有效管理.对于复杂的系统环境,“角色”能大大地简化权限的理.
(2) 终端用户的平安性:
您必须针对终端用户制定平安性策略.例如,对于一个有很多用户的大规模数据库,平安性管理者可以决定用户组分类为这些用户组创建用户角色,把所需的权限和应用程序角色授予每一个用户角色,以及为用户分配相应的用户角色.当处理特殊的应用要求时,平安性管理者也必须明确地把一些特定的权限要求授予给用户.您可以使用“角色”对终端用户进行权限管理.
数据库管理者平安性策略:
(1) 掩护作为sys和system用户的连接:
当数据库创建好以后,立即更改有管理权限的sys和system用户的暗码,防止非法用户访问数据库.当作为sys和system用户连入数据库后,用户有强大的权限用各种方式对数据库进行改动.
(2) 掩护管理者与数据库的连接:
应该只有数据库管理者能用管理权限连入数据库,当以sysdba或startup,shutdown,和recover或数据库工具(例如create,drop,和delete等)进行没有任何限制的操作.
(3) 使用角色对治理者权限进行治理
应用程序开发者的平安性策略:
(1) 应用程序开发者和他们的权限数据库应用程序开发者是唯一一类需要特殊权限组完成本身工作的数据库用户.开发者需要诸如create table,create,procedure等系统权限,然而,为了限制开发者对数据库的操作,只应该把一些特定的系统权限授予开发者.
(2) 应用法式开发者的环境:
A 程序开发者不该与终端用户竞争数据库资源;
B 用程序开发者不克不及损害数据库其他应用产品.
(3) free和controlled应用法式开发应用法式开发者有一下两种权限:
A free development
应用程序开发者允许创建新的模式对象,包含table,index,procedure,package等,它允许应用程序开发者开发独立于其他对象的应用程序.
B controlled development
应用程序开发者不允许创建新的模式对象.所有需要table,indes procedure等都由数据库管理者创建,它保证了数据库管理者能完全控制数据空间的使用以及拜访数据库信息的途径.但有时应用程序开发者也需这两种权限的混和.
(4) 应用程序开发者的角色和权限数据库平安性管理者能创建角色来管理典型的应用程序开发者的权限要求.
A create系统权限经常授予给应用程序开发者,以至于他们能创建他的数据对象.
B 数据对象角色几乎不会授予给应用法式开发者使用的角色.
(5) 加强应用程序开发者的空间限制作为数据库平安性管理者,您应该特别地为每个应用程序开发者设置以下的一些限制:
A 开发者可以创立table或index的表空间;
B 在每一个表空间中,开发者所拥有的空间份额.应用程序管理者的平安在有许多数据库应用程序的数据库系统中,您可能需要一应用程序管理者,应用程序管理者应负责起以下的任务:
a)为每一个应用法式创建角色以及管理每一个应用法式的角色;
b)创建和管理数据库应用法式使用的数据对象;
c)必要的话,维护和更新应用程序代码和Oracle的存储过程和程序包.
我相信有了以上的这些建议,作为一个Oracle的管理者绝对可以做好他本职的工作了.可是,我们再怎么努力,都始终得面对这样一个现实,那就是Oracle毕竟是其他人开发的,而我们却在使用.所以,Oracle到底有多少漏洞--我想这个不是你和我所能解决的.不过既然作为一篇讨论Oracle数据平安的文章,我认为有必要把漏洞这一块也写进去,毕竟这也是“平安”必不可少的一部分.呵呵!
所以……
Oracle漏洞举例:
1.Oracle9iAS Web Cache长途拒绝服务攻击漏洞
2.Oracle 8.1.6的oidldapd中的漏洞
3.Oracle 9iAS OracleJSP 泄漏JSP文件信息漏洞
4.Linux ORACLE 8.1.5漏洞
总而言之一句话--“Oracle数据平安是一个博大而又精深的话题;如果你没有耐心,就永远不会得到它的精髓之所在.”希望大家能深入的去学习这篇文章,学好了也是百一而无一害.
用心办妥学,深圳嘉华邀您加入互联网队伍!
微信号:jhzyjy(长按复制)
我们专注IT教育,迎接你前来咨询!
《北大青鸟深圳嘉华与你一起探讨Oracle数据库安全问题(下)》是否对您有启发,欢迎查看更多与《北大青鸟深圳嘉华与你一起探讨Oracle数据库安全问题(下)》相关教程,学精学透。维易PHP学院为您提供精彩教程。