[返回]
中国计算机用户1999年第4期

验明正身

邓道绩

  作为山东省跨世纪建设的石油化工基地,胜利石油管理局于96年底建成了胜利石油管理局综合信息网。为了充分利用网络来管好、用好各种纷杂的资源,我局从去年开始筹划建立一套面向全局包括计算机资源、网络资源、人力资源、网络维护及计算机工程文档等模块在内的数据库系统,该系统建成后将能比较清晰地了解目前管理局计算机资源的概况和各单位网络建设、维护情况,规范计算机工程的工作流程,最大限度地发挥各种资源的作用,并为今后资源的升级提供科学的依据。

  在数据库的设计和选择开发平台时,我们面临着两个抉择:一是数据库是分布存放还是统一存放;二是开发平台是采用客户、服务器方式还是采用浏览器、Web、数据库三层交换方式。考虑到本企业目前管理现状:管理局各单位计算机人员的素质参差不齐,能够胜任数据库使用、维护工作的技术人员不多;油田地域广,很难保证同时开机,从而查询不到完整的数据,影响数据库的使用等,我们最终采取了数据库统一存放和浏览器、Web、数据库三层交换方式,以充分利用信息网。只要是合法用户,便可在管理局信息网上的任何一台计算机上进行网络数据库的查询。同时我们还将数据统一存放在一台机器上,以减少维护工作量,而且一旦应用有变化,仅需在服务器端进行更改,减少了客户端维护的工作量。

  在网络资源数据库系统中,服务器操作系统是NT,数据库是微软SQL Server6.5,Web Server是微软IIS 3.0,客户端是浏览器,开发工具用编辑器编写Web Server上的后缀为ASP的程序。工作原理是客户端浏览器发出请求,IIS 3.0把程序的HTML部分交给客户机执行,程序的ASP部分交由服务器进行数据库的操作并将查询结果返回给客户机。由于网络资源数据库的数据属于内部资料,要求只有合法用户才能查阅,因此我们建立了一个包括单位、用户名和口令在内的用户数据库,运行程序时首先检查合法性,只有用户输入的用户名和口令与用户数据库一致时,才能调用下一个页面,否则程序将停留在首页面上。

  在调试程序时,我们发现合法用户进入第二个页面后,第二个页面的地址会出现在浏览器的Location中,这样就会出现绕过第一页直接从非第一页进入系统的情况,系统的安全性受到威胁。

  怎么办?对每一页面进行合法性检查!于是我们采取在不同页面之间进行参数传递的办法,验证每个页面的用户身份。但随之又产生了用户名和口令出现在浏览器Location中的情况,使合法用户的用户名和口令一目了然,系统的安全性依然没有得到保障。经过反复思考,最后我们采取了将用户名和口令变成ASCII码进行运算,参数传递过程中利用函数(Server.URLEncode)进行加密,在访问下一页时进行逆运算的办法,使参数在浏览器的Location中成为怪字符,解决了系统的安全性问题。

  网络资源数据库系统投入使用后,已有50多家二级单位的数据录入到资源数据库中,补充了基础数据的历史遗留帐,基本杜绝了以前随处找资料的现象,各单位用户和领导使用后也比较满意,达到了系统设计要求。