项目应用中ORACLE数据库角色和用户密码的管理

时间:2022-10-20 10:58:09

项目应用中ORACLE数据库角色和用户密码的管理

摘要:数据库必须要在项目应用中才具有价值,不论是数据库的安全性处理,角色与用户密码的管理等,都是如此。如果Oracle数据库脱离了项目应用也就不能体现出它强大的功能,光有数据库也就失去了它应有的意义。Oracle数据库作为信息管理系统的基础软件,其信息保密的安全性起着至关重要的作用,而Oracle较其他中型数据库而言,它的优势就体现于功能强大的用户与角色的管理。Oracle 数据库用户角色和密码管理是数据库安全重要的功能之一,通过建立不同的角色和用户密码,使用数据的密码文件,可以有效的防止不具备相关权限或非法的用户进入Oracle数据系统。

关键词:Oracle数据库;用户和角色权限;设置和密码管理

中图分类号:G250.74 文献标识码:A 文章编号:1001-828X(2012)02-00-01

一、Oracle数据库在项目应用中的用户和角色管理

(一)在项目应用中目前常见的用户管理问题

1.用户权限混乱:非数据管理员常常具有DBA权限(数据库管理员权限)并且不指定用户相关作用的表空间或者用户具有权限可继承性(with admin option)。因为用户权限的混乱造成任何用户都能随意修改数据库中的数据导致数据库中数据信息混乱,严重的会使数据库系统崩溃。2.用户数据储存混乱:很多用户在使用Oracle数据库储存数据时不更改储存位置,导致所有数据都储存在缺省储存位置(系统表空间),这样会导致数据的保密性差并且容易造成数据混乱,严重时会导致数据库系统崩溃。3.不修改系统初始密码:数据库管理员不修改系统的初始密码,而Oracle数据库的系统用户SYS和SYSTEM的密码又是默认统一的密码。这样下级用户的密码设置和有效时间没有概要文件(profile)进行具体约束,导致密码安全性降低。

(二)在Oracle项目应用过程中有效的管理角色和用户的建议

可以通过授权来限制Oracle用户或角色对数据库的操作,即授权少量的用户为整个数据库或某些表空间的管理员,可对整个数据库或某些表空间进行访问并且具备读写的权力,而其他大多数的用户或角色只能对整个数据库或某些表空间只具有读的权力。下面是管理据库用户角色的一些建议:

1.作为数据库管理员的规范

(1)ORACLE 初始化建立的SYS和SYSTEM系统管理员用户密码应由项目经理来管理并且立即修改成保密性强的字符,并且只能由极少数相关人员知道。

(2)应该及时修改Oracle Web Server的管理员Admin密码,不应使用默认的密码,并且要制定人员定期修改密码以保证密码和数据库系统的安全性。

(3)数据库管理员(DBA)最好在Oracle DB Console可视化窗口模式界面实现管理。前提是ORACLE用户启动服务器,使用SYS或SYSDBA用户登录,就可以对数据库进行操作和维护了。

2.用户使用SQL*PLUS编程时的规范

(1)按规范进行数据的储存

SQL*PLUS编程的好处是可以使各行业,各公司或部门之间的数据实现互通,因此在使用SQL*PLUS编程时要有一定的规范。按照应用种类的不同,就应该制定不同的用户或角色,并且必须制定不同的储存位置。如果要编写一个较大规模(从ORACLE数据量和面向用户数量考虑)项目应用时,首先应该对储存位置和表空间的存放路径,和储存大小有一个比较系统的规划,以免在后来的数据库开发过程中造成数据紊乱。

(2)用户名和密码设置规范

开发人员在项目应用中,把大部分的用户名和密码设为一致以方便记忆,导致数据库系统的安全性极差。数据库中用户名和密码必须是不相同的,而且密码位数也最好有一定的限制,最好是在6位以上以保证安全性,并且规定密码必须有大小写字母和数字组成。不同用户不应该使用相同的密码。

(三)在实际项目应用中常会出现一些有特殊要求的用户

即非项目开发人员,但是需要对某个表有访问和读写的权力。那么管理员应创建一类特殊的角色,先确定角色的具体权限,再制定角色所作用表空间的DBA对角色进行用户名和密码的分配,并授予不可继承性权限(with grant option)。

二、用户和密码设置方法和注意事项

为防止不具备相关权限的用户非法进入数据库系统或表空间,目前主要办法是在概要文件(profile)中设置保密口令,并对其进行加密。其方法有如下几种:

(一)在命令文件中设置密码。这种方法最为简单,单缺点也很明显,不仅在修改密码时要修改命令文件,而且保密性也很差,只要找到命令文件的位置就可以从命令文件中看到密码。

(二)创建一个单独的密码口令文件,并使用该口令文件进入数据库管理系统。这种方法较前一种方法的优点是免去了设置和修改口令的不便、保密性差的问题。缺点是只要用List和Display命令就可以获取密码口令文件中的密码。

(三)在第二种方法的基础上采用加密算法对密码口令文件中的字符进行加密,生成加密后的密码字符串。这种方法有效的提高了密码的安全性,单加密算法可以从命令文件中看出,还是存在一定的缺陷。

(四)使用Wait语句,在密码口令中输入一些特殊的符号如:空格符,退格符等,这样不仅显示器无法显示这些符号而且打印机也打印不出这些符号,因此大大加强了密码口令的安全性。

三、结束语

以上是目前在项目应用当中普遍存在oracle 用户和密码的管理问题,也提出了一些自己的建议,在项目应用中用户角色划分和用户权限的管理对数据库系统的管理和安全起到了较大作用;用户密码的设置方法也可提高了数据库管理系统中数据的安全。

参考文献:

[1]郭利峰,耿慧铭.ORACLE数据库角色与用户密码的管理.计算机信息与技术,2007.19.

[2]李强.Oracle 11g数据库项目应用开发.电子工业出版社,2011.

[3](美)阿拉派蒂,著.Oracle 11g数据库管理艺术.钟鸣,译.人民邮电出版社,2010.

[4]刘宪军.Oracle RAC 11g实战指南.机械工业出版社,2011.

作者简介:马世骏(1983-),男,四川成都人,四川商务职业学院助教,从事计算机网络、数据库开发、网站建设方向的研究。

上一篇:信息安全风险管理框架研究 下一篇:试论我国电子政务发展面临的主要问题