提高rcle数据库应用系统安全的举例与分析.docx

上传人:罗晋 文档编号:10709573 上传时间:2021-05-31 格式:DOCX 页数:9 大小:70.67KB
返回 下载 相关 举报
提高rcle数据库应用系统安全的举例与分析.docx_第1页
第1页 / 共9页
提高rcle数据库应用系统安全的举例与分析.docx_第2页
第2页 / 共9页
提高rcle数据库应用系统安全的举例与分析.docx_第3页
第3页 / 共9页
提高rcle数据库应用系统安全的举例与分析.docx_第4页
第4页 / 共9页
提高rcle数据库应用系统安全的举例与分析.docx_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《提高rcle数据库应用系统安全的举例与分析.docx》由会员分享,可在线阅读,更多相关《提高rcle数据库应用系统安全的举例与分析.docx(9页珍藏版)》请在三一文库上搜索。

1、提高Oracle数据库应用系统安全的举例与分析赵晋王维民(合肥市电信局计算中心)摘要本文介绍了作者为了提高Oracle数据库安全所进行的一些 有益尝试。关键词Oracle数据库安全I.Oracle数据库安全的几个基本概念1.1 帐户安全(Accountsecurity )要在数据库中访问数据,就必须访问该数据库的一个帐户。 每个 帐户必须指定一个口令。口令是在帐户建立的时候设置的,可由 DBA或用户进行修改。1.2 系统级权限(System-levelPrivilege )系统级权限可以建立从系统级权限全集到扩展的基本系统级的各类角色。比如,Connect,Resource 和DBA就是分别提

2、供给 用户,开发者及DBA的标准角色。1.3 对象安全性(ObjectSecurity )用户可以通过grant命令将自己创建的一些权限授予其他用户使用,也可以给其他用户授予对对象授权的权限。例如,可以授予一个用户拥有对本用户表授予 select权限的权限。1.4 审计(Auditing )Oracle具有审计发生在其内部的所有操作一一包括注册企图, 对象访问和数据库操作一一的能力。审计的结果存储在数据库 的审计表中。2.应用实例与分析在一些较大规模的Client/Server系统中,Client端的应用程序 一般是通过主程序中的语句实现与数据库的连接。这种情况下, 任何人打开源程序便能清楚了

3、解数据库的连接口令,这就可能导致安全性问题。经常改变数据库密码是一个办法,而若要改变数 据库用户的密码,就需重新编写相关程序,并对 Client端的有 关程序进行更新,对于Client端多而分散的系统,实际运作很不 方便。能不能让这些工作简单易行一些呢?我们在工作中进行了 一些尝试。我单位数据库环境为Oracle7.3,开发工具是Develope2000。收费系统是我单位的核心系统之一,占有极其重要的地位,其 Client端分散在市区的数个营业点,通过城域网与主机(小型机)相连。收费系统在数据库中的用户名为 SFYY(收费应用)。试验的步骤是这样的:2.1 在收费小型机Oracle系统的sys

4、tem用户(DBA)下,创建新用户test;createusertestidentifiedbycartondefaulttablespacedataspacelquota100K2.2 对test用户授以权限;grantcreatesessiontotest;grantresourcetotest;2.3 在test用户下建立一个存储函数 mmtranslate,它其实是一个加密程序。下面是一个简单的例子。functionmmtranslate(mvarchar2)returnvarchar2 as inumber(2);kkvarchar2(10);beginkk:=;i:=1;loopi

5、fi0thenkk:=kk|chr(100+to_number(substr(m,i,1);elsfinstr(wxyz,substr(m,i,1),1,1)0thenkk:=kk|chr(-8+ascii(substr(m,i,1);elsekk:=kk|chr(4+ascii(substr(m,i,1);endif;else exit;endif;i:=i+1;endloop;returnkk;exceptionwhenothersthenreturn -1;end;2.4 在test用户下建表mmtest并插入记录createtablemmtest(usnamevarchar2(6),

6、用户名称mimavarchar2(6) 加密前的密码);insertintommtestvalues(sfyy,eds2);commit;2.5 执行以下语句SQLselectmmtranslate(eds2)fromdual;MMTRANSLATE(EDS2) ihwf利用DBA权限更改sfyy的密码为上面语句的执行结果:alterusersffyidentifiedbyihwf;2.6 修改应用程序,对于开发环境是 Develope2000 的程序来说,主要是修改主程序的on-logon触发器:declaremmvarchar2(6);beginlogon(test,carton);sel

7、ectmimaintommfrommmtestwhereusname=sfyy;mm:=mmtranslate(mm);logout;logon(sfyy,mm);end;然后再利用触发器WHEN-NEW-FROM-INSTANCE 执行Callfrom 或Newform 等命令,进入业务处理程序。这个主程 序应当仅仅由管理员来掌握,编译之后将执行文件下发到各收费 点的Client端。2.7 在System 用户下,利用Oracle提供的pupbld.sql,建立表 Productuserprofile,执行下面这样的命令,限制在非开发状态 Sql命令的使用例如insertintoproduc

8、tuserprofile(product,userid,attribute,charvalue)values(SQL*Plus,TESr,CONNECr,DISABLED);insertintoproductuserprofile(product,userid,attribute,charvalue)values (SQL*Plus,SFYY,DELETE,DISABLED);这样,在 SQL 状态 下,根本无法连接到TEST用户,而在sfyy用户下,delete命 令将不能执行。当然,DBA可以改变这些设置。3.可以看出,通过上述的一系列处理,无须更新程序便能实现应用 系统数据库(本例中的s

9、fyy)密码的定期或经常的改动,大大提高 了维护效率。Test用户的口令只有DBA掌握;过程mmtranslate 的加密方式也可以经常改变。这些都保证了安全性。另一方面,还要加强对源程序的管理,在 Client端只存放执行 程序。加强审计,发现异常现象,及时处理。通过这些手段,数据库安全得到了更好保证。MVision解决方案创新创先Micron将于7月正式推出一套 MVision 计划,专门帮助行业 用户和政府部门进行以下活动:提高他们的IT人员的能力,增 加他们的财政来源,以及从事高收益的科技。MVision计划的第一阶段包括:16项提高IT人员生产力的新的产品和服务;新 的增加财政来源计

10、划和提供高科技帮助。通常计算机供应商提供 的以上各种项目只为被美国财富杂志评为的全美前500名企业服务。而Micron为满足行业用户和政府部门的需求而为他 们提供了上述项目,从而成为这一行业中领导者。MicronMicron 董事长兼 CEOJeolKrocher 先生说:“MVision 计划的第一步的基础是IT 专业人士和高级管理的直接输入。它主要是为了让行业部门和政府机构中的 IT 人员更加有步骤、有效率的工作。通过MVision 计划,我们希望帮助我们的客户减少配置PC 机的运转费用, 并利用高科技来进行他们的合作项目。这意味着用在用户支持和管理上的 IT 预算和人员将会减少。 同时, 也意味着将帮助我们的客户提高技术水准。 而这些技术能减少开支并提高机构的效率。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1