`
icheng
  • 浏览: 830882 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
文章分类
社区版块
存档分类
最新评论

提高Oracle数据库安全性的几个建议

 
阅读更多

   Oracle数据库作为存放企业数据的集合,其安全性不用我们再过多的强调。现在问题是,笔者在给客户提供技术服务时,发现有不少的企业,在安全性方面做的不怎么到位,连最简单的一些安全措施都没有做。

  我想通过这篇文章,提醒Oracle数据库管理员,在规划与实现Oracle数据库安全性方面需要注意的地方,向他们提一些可行的建议。希望这些内容能够帮助他们提高Oracle数据库的安全性。

  一、 锁定不用的帐户。

  在Oracle安装的时候,会自动建立几个默认的数据库服务器帐户。当Oracle数据库安装完成后,系统会自动把某些帐户锁定或者设置为过期;但同时也会打开一些有用的帐户,如SYS、SYSTEM、SYSMAN等等。如果安装了数据库实例,可能还会建立scott帐户。为了Oracle数据库的安全性考虑,我们最好能够把一些不用的帐户锁定掉。一般来说,若是系统提供的帐户,我们只需要保留SYS、SYSTEM、SYSMAN这三个用户名即可,其他的系统自建的用户名可以锁定掉。

  另外,在数据库维护中,我们还会建立自己的管理员帐户。如笔者在维护数据库系统的时候,就不喜欢用系统提供的管理员帐户。而是会先利用他们的帐户登陆进去,然后建立自己喜欢的用户名与密码。所以,当数据库系统理有你前任数据库管理员留下来的用户名而你又不想用的时候,请各位高抬贵手,及早把它锁定掉。这可以提高数据库的安全性。可惜的是,笔者有时候给客户进行数据库有偿维护的时候,发现数据库中有很多莫名其妙的管理员帐户。问他们数据库管理员这些帐户有什么用时,他们说是前任留下来的,他们也不知道。对于这些帐户,笔者的建议是,尽快的把他们锁定掉或者过期掉。不然的话,对于Oracle系统来说,是一颗定时。一旦爆炸,就会给这个数据库带来不可换回的损失。

  二、 实施口令管理。

  这准确来说,不是笔者的建议,而是Oracle官方的建议。我在参加Oracle培训的时候,他们的教授就跟我们说,应该将数据库所提供的基本口令管理准则,如口令长度历史纪录、复杂性等等,应用于所有的用户密码中,并要求所有的管理员帐户养成定期更改密码的习惯。

  依赖于密码管理的数据库系统来说,需要保证密码在任何时候都是保密的。可是在实际工作中,密码可能会泄露,如在输入密码的时候被人看到或者被人利用密码窃取工具窃取到密码等等。故为了更好的控制数据库的安全,Oracle数据库中通过概要文件来保障数据库口令的安全。这可以说是Oracle数据库的一个独创的功能了。

  具体的来说,Oracle在口令管理上,有如下规则。

  1、口令历史。这跟微软操作系统中的口令历史一致。主要是用来指定在一个时间间隔内用户不能使用相同的密码。我们可以利用CREATE语句创建一个用户概要文件,虽然利用REUSE_TIME与REUSE_MAX参数指定间隔天数。TIME参数用来指定在多久后可以采用相同的密码;而MAX参数则指定,在可以再次使用当前口令之前,用户必须改变该口令的次数。

  2、口令的期限。若一个密码时间越长,其泄露的几率越长。最理想的状态是,每用过一次后,就修改一次密码。但是,这显然不怎么容易实现。所以,我们需要根据一定的情况,设置一个密码有效的最长期限。当这个期限过后,原来的密码就失效,用户必须重新修改密码。我们可以利用CREATE语句为某一个用户创建一个概要文件,然后利用LIFE?_TIME参数指定口令的最长有效时间。当然,也可以为到期的密码指定延长期。当用户的口令到期后,用户第一次登陆数据库的时候,用户需要输入延长期。在这个延长期内,用户仍然可以使用原有的密码,只是每次登录数据库,系统都会提醒用户修改密码,直到延长期结束。当延长期满后,用户必须更改原有的口令。否则的话,系统会一直提醒用户更改密码,而拒绝登陆系统。另外,口令的期限往往跟上面的口令历史一起使用,从而把密码的安全性提高到一个新的层次。

  3、密码的复杂性管理。我们都知道,纯数字的密码要比数字、字符混合的密码好破解的多。故为了加强用户名密码的安全性,设置一定的复杂性密码管理规则是必须的。Oracle数据库系统中,提供了很多的密码复杂性检查。如可以规定密码的最小长度;可以设置密码不能与用户名相同;可以规定密码中必须包含字符、数字、标点符号等等;还可以设定密码不能为简单的单词以及密码的前面几个字符不能够相同等等。通过这些复杂性管理,可以最大程度的保障密码的安全性。如此的话,若想要通过数字字典破解密码的话,难度就会比较大。不过,密码虽然复杂了,但是用户最好不要随便拿张纸记一下,这样的话,密码仍然容易泄露。最好把密码记熟了,然后把纸撕掉或者烧掉,以确保密码不会被泄露。

  三、 帐户自动锁定。

  我们在利用银行卡帐户的时候,当密码输入错误超过一定的次数时,这卡就会被锁住。其实,在Oracle数据库中,也可以实现这个目的。当某个管理员帐户,或者普通的帐户,其失败的登陆次数超过了我们指定的次数时,服务器就会自动锁定那个用户帐号。

  一般来说,我们只需要给管理员帐户设置自动锁定策略即可。因为相对于普通用户来说,由于其不怎么熟悉操作,所以密码输入错误的几率会比较高。若我们为他们设置密码锁定策略的话,那我们很大一部分工作就是给他们进行解锁。所以,没有特殊必要的话,不要给普通帐户设置自动锁定策略,或者说,至少要把这个密码输入错误次数设置的高一点。

  另外,若是前台应用程序直接连接到数据库的话,也会有用户名与密码。这个用户名与密码笔者建议是不要设置密码锁定策略,否则的话,我们维护起来会很麻烦。

  四、 合理分配终端用户的权限。

  终端用户就是企业员工实际用的帐户。针对普通员工的权限控制,一般有两种方式。一是通过前台的应用软件来控制;二是通过数据库的用户权限来实现。

  如果我们是利用数据库自身的权限管理器来管理帐户权限的话,则我们需要考虑对终端用户进行分组,然后为这些用户组创建不同的角色。数据库管理员可以先给每个角色赋予必要的权限,然后再将这些角色赋予相应的用户组。也就是说,我们不建议直接给用户赋予相关的权限,而是通过角色与组来管理数据库的访问权限。在特殊的情况下,如某个权限只有一个特定的帐户具有时,则可以直接把权限赋予这个帐户。否则的话,我们不建议给用户直接赋予权限。

分享到:
评论

相关推荐

    建立用户组保证Oracle数据库安全性

    在操作系统下建立用户组是保证数据库安全性的一种有效方法。Oracle程序为了安全性目的一般分为两类:一类所有的用户都可执行,另一类只DBA可执行。在Unix环境下组设置的配置文件是/etc/group。保证安全性的几种方法...

    Oracle数据库学习指南

    31.数据库安全性策略 32.数据库的查询优化技术. 33.提高C-S系统性能的一些方法 34.提高ORACLE数据库系统import性能 35.外部联接的用法 36.性能调试的一般问题 37.优化 38.优化调整Oracle 8i数据库(从...

    Oracle数据库安全策略

    正在看的ORACLE教程是:Oracle数据库安全策略。 随着计算机网络应用的普及和提高,Oracle数据库应用在各个领域日新月异,它性能优异,操作灵活方便,是目前数据库系统中受到广泛青睐的几家之一。然而,随着应用的...

    Oracle 10g 网格数据库研讨会33个PPT下载

    Oracle数据库10g安全性概述 Oracle数据库10g-对自我管理数据库进行管理1 Oracle数据库10g-对自我管理数据库进行管理2 Oracle数据库10g-信息集成 Oracle数据库10g-支持全球化特性的平台 Oracle数据库10g中的数据...

    构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化

    《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》从硬件和软件两个维度系统且全面地讲解了Oracle 11g R2 RAC的架构、工作原理、管理及维护的系统理论和方法,以及性能优化的技巧和最佳实践...

    Oracle安全讲义

    本文档对Oracle数据库的安全方面进行介绍。 第一章:oracle数据库的一些...第三章:不被“hacker”入侵的几个建议(组和安全性、Oracle服务器实用例程的安全性、数据库文件的安全性、网络安全性、建立安全策略等)。

    oracle数据库安全概论 (2013年)

    数据信息作为一个企业无形的资产,数据安全的重要性也毋庸置疑,数据库作为存储信息的主要...首先提出数据库安全的概述,然后分析oracle数据库安全的要求和一些安全隐患,最后对提高oracle数据库安全性提出几点建议。

    Oracle11g从入门到精通

    13.1 Oracle数据库安全性概述 13.1.1 Oracle 11g的安全性体系 13.1.2 Oracle 11g的安全性机制 13.2 用户管理 13.2.1 创建用户 13.2.2 修改用户 13.2.3 删除用户信息 13.2.4 查询用户 13.3 虚拟专用数据库 ...

    ORACLE数据库物理分布设计.doc

    ORACLE数据库物理分布设计 概述 我们无论使用哪种数据库,无论怎样设计数据库,我想都会遵从一个原则:数据安全性 和性能高效这两个主要方面,但是关于这两个方面的话题太多,在这里就不一 一陈述,我只是从数据库...

    Oracle11g从入门到精通2

    13.1 Oracle数据库安全性概述 13.1.1 Oracle 11g的安全性体系 13.1.2 Oracle 11g的安全性机制 13.2 用户管理 13.2.1 创建用户 13.2.2 修改用户 13.2.3 删除用户信息 13.2.4 查询用户 13.3 虚拟专用...

    Oracle商务手册易燕海

    3. Oracle数据库11g企业版(Oracle Database 11g Enterprise Edition )为关键任务的应用程序(如大业务量的在线事务处理 (OLTP) 环境、查询密集的数据仓库和要求苛刻的互联网应用程序)提供了高效、可靠、安全的...

    如何保持Oracle数据库的优良性能

    如何使Oracle数据库保持优良性能,这是许多数据库管理员关心的问题,根据笔者经验建议不妨针对以下几个方面加以考虑。   一、分区  根据实际经验,在一个大数据库中,数据空间的绝大多数是被少量的表所占有。为了...

    数据库系统概论自己版.xmind

    begin atomic … end之间:使得几个SQL语句为一个事务 数据库系统 VS 文件处理系统 文件处理系统 文件相互独立,程序随时编写 数据冗余和不一致、数据访问困难、数据孤立 存储信息时存在完整性问题...

    Oracle官方培训教程

    在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。  * 支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。  * 提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中...

    保持Oracle数据优良性能的若干诀窍

    Oracle数据库以其高可靠性、安全性、可兼容性,得到越来越多的企业的青睐。如何使Oracle数据库保持优良性能,这是许多数据库管理员关心的问题,本文针对此问题提出几个建议。

    数据库原理(第5版)

    我们继续保持并改进了本书前几版引入的几个特性: ● 在每章中使用“Access工作台”介绍Microsoft Access的基础知识。 ● 介绍SQL Server 2008 R2 Express版(附录A)和Oracle MySQL Community Server 5.1(附录B)的...

    常用数据库管理系统简介.docx

    常用数据库管理系统简介 目前市场上比较流行的数据库管理系统产品主要是 Oracle、旧M、Microsoft和Sybase、 mysql等公司的产品,下面对常用的几种系统做简要的介绍: Oracle Oracle数据库被认为是业界目前比较成功的...

    三层ADO的Internet远程数据库访问开发套件

    高效的数据压缩和加密传输,提高远程的数据访问速度和安全性。 8、服务端状态监控功能 对服务器的连线和负载状态进行实时监控,可查看每个客户端连接的来源和请求情况,包括数据的收发字节数 9、便于安装和维护 ...

Global site tag (gtag.js) - Google Analytics