高等学校新生入学教育考核系统的设计与实现

2013-07-17 01:21:52静,孙
关键词:浏览器试题安全性

丁 静,孙 鹏

(1. 沈阳工程学院现代教育技术中心,沈阳110136;2. 沈阳师范大学图书馆,沈阳110034)

随着高等学校近几年招生规模的不断扩大,各高校的新生入学教育考核问题一直困扰着学生部门的工作人员.面对庞大的学生群体,如何利用现有的资源有效地解决这一问题,使入学教育考核更加合理化、科学化,是各高校迫切需要解决的问题.现在的高校一般都有自己的校园网,这里将探讨如何利用现有的网络资源,再结合计算机技术和网络技术,设计和实现高等学校新生入学教育考核系统.

1 系统总体设计与实现

考核系统是面向全体新生,具有数据量大、并发数多等特点,对数据库服务的要求较高,因此采用了MS SQL Server 作为数据库,从而保障了系统的稳定运行.

1.1 系统开发及应用环境

1)服务器的要求. 操作系统为Windows 2000;数据库软件为MS SQL Server2000;网页发布软件为IIS.

2)终端用户的要求.可以上网的PC 机,浏览器为IE6.0.

3)开发软件.Dreamweaver、MS SQL Server 2000.

1.2 系统模块划分

1)登陆系统.参加入学教育考核的学生凭借自己的学号登陆系统,确认个人信息后可以进行考核;未在系统注册的学生是不能参加考核的.

2)随机生成试题. 学生确认自己的信息后,系统随机生成试题,可以有效避免互相抄袭,确保了成绩的真实性.

3)考试结束,提交试卷,成绩入库.考试正常结束后,系统自动计算成绩,并写入数据库,以便统计和对比;如果学生未能在规定时间内完成试题,则强行提交,成绩同样有效.

2 系统工作模式及实现

2.1 当前流行的工作模式

2.1.1 Browse/Server 模式

根据不同级别的安全需要,又可以扩展为:浏览器/Web 服务器/数据库服务器,这种3 层的B/S 结构将用户界面、应用逻辑、数据管理彻底分离,彼此独立,各行其职,用户通过URL 与Web 服务器建立网络的连接,将Web 服务器上的资源下载到客户端的浏览器上进行访问,应用逻辑通过ADO 与数据库服务器进行数据交换,因而具有更高的安全性.这种工作模式是随着Internet 技术的不断成熟,对C/S 模式的一种变化和改进. 在这种工作模式下,用户完全通过WWW 浏览器实现,一部分逻辑在前端实现,但是主要事务逻辑在服务器端实现,主要是利用了不断成熟的WWW浏览器技术,综合浏览器的多种Script 语言(VBScript、JavaScript)和ActiveX(ActiveX 是微软公司OLE 技术OCX 技术的聚合,ActiveX 为OLE 控件定义了新的规范,使得其更小且效率更高,适合在Internet 上使用)技术.采用通用浏览器就实现了原来需要复杂专用的软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术.而且它的前端是以TCP/IP 协议为基础的,局域网内部的WWW服务器可以接受安装有Web 浏览程序的Internet 终端的访问.作为最终用户,只要通过Web 浏览器,各种处理任务都可以调用系统资源来完成,这样大大简化了客户端,减轻了系统维护与升级的成本和工作量,而且以后的改进和升级工作只要对服务器进行操作即可,降低了用户的总体拥有成本和维护的成本,所以采用这种模式,无论是现在还是将来都是最好的一种选择.

2.1.2 Client/Server 模式

这是计算机应用于解决实际问题产生的一种传统的工作模式,由于通过应用软件访问服务器,所以客户端必须安装指定的应用软件,才可以对数据库进行管理和操作,因而使用范围受限,灵活性较差.

当采用这种工作模式的系统开始工作时,当用户的数量不大、数据库中的数据不多时,系统的运行速度较快,而且比较稳定.但是随着用户数量和数据量的增加,网络中数据流量会大量增加,容易造成网络堵塞,客户端处理数据时要对数据表或记录进行反复读取,处理不当易形成死锁,导致系统无法正常使用,严重影响了系统的稳定性.

2.2 所设计的系统工作模式

鉴于以上2 种工作模式的优缺点,如果采用传统的C/S 模式,数据流量受限,容易出现瓶颈问题,而且系统的维护、升级也不方便,所以采用目前较为流行的B/S 模式(2 层结构),在一定程度上减轻了系统管理员的负担,而且便于系统的升级与维护.

系统工作模式结构如图1 所示.

图1 系统工作模式结构

其工作过程可以解释为:

1)用户启动客户端浏览器,在浏览器中确定将要访问页面的URL 地址,浏览器软件使用Http 协议,向该URL 地址所指向的Web 服务器发出请求.

2)Web 服务器根据浏览器送来的请求,把URL 地址转换成页面所在服务器上的文件路径,找到相应的文件.

3)如果URL 指向HTML 文档,Web 服务器使用Http 协议将该文档直接传送给浏览器,在HTML 文档中可能包含有JavaScript 或VBScript 等基本程序段,随HTML 一起下载的还可能有JavaApplet 和ActiveX 等小程序,把结果送到浏览器.

4)浏览器解释HTML 文档,在客户端屏幕上向用户显示结果.

3 数据库的安全性与完整性分析

3.1 数据库的安全性分析

3.1.1 身份验证机制

SQL Server 采用用户登录级、数据库用户级、数据库对象级的登录标识与数据库用户相结合的逐级的安全防护机制. 用户登录级要求用户首先使用有效的登录标识向SQL Server 登录,系统对其正确性进行验证,方能与SQL Server 相连和进入. SQL Server系统验证用户的方法有2 种:一种是Windows NT 验证模式,这种模式使用NT 的验证机制来检查用户的合法性,用户只须在登录NT 时验证一次,SQL Server就认为这是个有效的登录标识,SQL Server 的安全管理将Windows NT 帐户映射为SQL Server 的登录标识,这样即减轻了SQL Server 的维护工作又使其与Windows NT 更紧密的结合;另一种是SQL Server 的验证模式,又称混合模式,在这种模式下,用户登录在SQL Server 中定义,用户要用SQL Server 的登录标识和口令登录.

3.1.2 授权机制

数据库的用户级进行数据库的授权与回收控制用户是属于特定的数据库的,每个数据库的用户都能够对本数据库进行查询和操作数据库用户与登录标识相关联,一个应用程序使用登录标识向SQL Server 登录成功后,对某一特定的数据库进行操作.

3.1.3 安全体系

基于上述机制,对具体的数据库应用系统可以设计出这样的安全体系:每个数据库的应用只建立1 个真正的数据库帐号,它只具有对系统应用所涉及的数据库实体进行操作的全部权限.与此同时,为系统的各类用户分别创建1 个应用系统帐号,实际上只是数据库中名为synudata 表里的1 条记录这样,每次应用程序在客户端执行时,首先会用数据库帐号登录数据库,然后执行自行编写的登录程序,与synudata 表结合,实现应用系统登录这种安全体系使得应用系统成为数据库的直接用户,而应用系统的所有用户则是数据库的间接用户.应用系统除了完成其应用逻辑外还将系统用户和数据库隔离开来,成为数据库的一道“防火墙”.

3.2 数据库的完整性分析

数据的完整性是要保证存储在数据库中的数据的一致性、有效性和正确性.SQL Server 采用数据完整性约束机制来检查数据库中数据是否满足语义的规定,从而实现数据的正确性和相容性,防止不合理数据造成无效操作和错误结果,从而维护数据库的完整性这种约束加在数据库的表的定义上,它不用额外书写代码,因而代价小、性能高.

3.2.1 实体完整性

实体完整性是要保证每个行能被称作主关键字属性的唯一识别实体完整性的规则要求关系的主属性非空,即在实际的关系库中,建表时用primary key 子句定义主码列SQL Server 在用户程序每次对主码进行插入、删除、修改等更新操作时进行完整性检查,若此操作使主属性列为“空值(NULL)”,或使主码值在表中不唯一,则拒绝此操作.

3.2.2 参照完整性

在实际系统中,若存在参照关系R1和依赖关系R2,R2包含外码Fk且与R1的主码Pk相对应,则R2中每个元组在Fk上的取值要么为空,要么等于R1中主码的某个值.

3.2.3 E-R 图

实体:客观存在并可区分的事物.

属性:实体所具有的某种特性,1 个实体可以有多个属性.

关系:实体之间的对应关系,可分为1:1 联系、1:n联系、m:n 联系.

4 算法实现

算法是解决实际问题方法的精确描述,是为客观世界中各类具体问题设计良好的分析方法及解决方法.系统的主要目的是使学生通过在线测试来达到考核的目的,因而测试试题的难易程度将直接影响学生的成绩,也就是说试题选取方法的优劣将直接影响测试者的成绩,所以如何保证试题的合理搭配是本系统保证测试质量的核心技术.

为了保证测试的公平、公正、合理,系统的选题方式采取随机选题技术,在试题数量足够多(由选取的试题数量确定)的情况下,尽量保证不出现重复的试题,从而提高了测试的质量.系统采取的随机选题技术如下:

统计数据库中测试题的数量,并用n 来记录:

定义变量i,做为随机选择的试题的数量记录,初始值为1:i=1

当i 小于试卷中的试题数量30 时,执行循环选题操作:

从数据库中检索编号等于随机值num,做为随机选择的试题:

用变量存储该条记录的字段值,以便于插入临时数据库中:

将变量中存储的值插入到临时数据库中,以便于形成试卷:

到此,随机选题工作结束,同时将选题的结果插入到临时数据库中,便于在后面的测试中形成试卷,当考试正常结束后,系统自动删除临时数据库中的试题,以减轻服务器的负担,也提高了数据处理的速度和程序的执行效率.

5 系统安全性

在Internet 环境中,不断传出黑客入侵网络系统的事件报道,这些成功入侵网络系统的黑客主要是抓住了Internet 上各种应用软件的种种弱点和漏洞,从而导致成千上万的口令和系统程序、系统数据库在Internet 上被盗取或恶意修改,Internet 的安全问题成了当前各种应用软件开发人员关注的焦点.

既然网络本身就是不安全的,利用网络的同时,必须通过一定的措施来尽量提高网络的安全性、可靠性,Internet 的安全性一般通过如下几方面的安全服务来实现:①问用户的IP 来保护计算机上的资源不被非授权使用;②加强应用软件服务器的安全保障措施,主要是防火墙技术;③提高应用软件本身程序上的安全性.

鉴于以上网络的种种不安全性和提高网络安全性的可行措施,系统的数据库采用了MS SQL Server2000,可以说在当前的各种数据库中,是一个相对可靠的数据库;系统的应用程序安装在学校的主服务器上,使应用程序置于防火墙的保护中,自然就提高了系统的安全性;为了保护计算机上的资源不被非授权使用,系统仅限在校园网内部使用,从而在IP 上限制了校园网外部的黑客,使之无法入侵系统;在系统的应用程序上,也充分利用了ASP 技术的Session 功能,使用户不能通过在浏览器中直接输入网页名称来跳过身份验证页面的方式来进入系统,从而在系统的应用程序上提高了系统的安全性.

6 结 论

新生入学教育考核系统使高等学校的入学教育考核更加合理化、科学化,如果将其推广,必定会给高等学校的入学教育考核工作带来很大的方便.

[1]宣小平,但正刚,张文毅.ASP 数据库系统开发实例导航[M].北京:人民邮电出版社,2003:158,184,303-307.

[2]萨师煊,王 珊.数据库系统概论[M].北京:高等教育出版社,2000:88,117-118.

[3]刘 韬,楼兴华.MS SQL Server 2000 数据库系统开发实例导航[M].北京:人民邮电出版社,2003:95,130-142.

[4]李晓黎,张 巍.ASP+SQL Server 网络应用系统开发与实例[M].北京:人民邮电出版社,2003:72-94,130-162.

[5]Alexander L Factor[美].应用服务供应商(ASP)解决方案[M].孙延明,译. 北京:电子工业出版社,2003:76,108,134.

[6]陆登波.数据库SQL Server 的安全性剖析[J].咸宁师专学报,2002,22(6):90-92.

[7]贾长云,陆卫忠.试论IIS 中SQL 数据库的安全性[J]. 计算机与现代化,2003(1):55-56.

[8]徐 虹,杜 斌. 使用ASP 和ADO 技术访问Web 数据库[J].成都信息工程学院学报,2001(4):263-268.

猜你喜欢
浏览器试题安全性
新染料可提高电动汽车安全性
2021年高考数学模拟试题(四)
某既有隔震建筑检测与安全性鉴定
《陈涉世家》初三复习试题
2019年高考数学模拟试题(五)
反浏览器指纹追踪
电子制作(2019年10期)2019-06-17 11:45:14
2019届高考数学模拟试题(二)
ApplePay横空出世 安全性遭受质疑 拿什么保护你,我的苹果支付?
环球浏览器
环境与生活(2016年6期)2016-02-27 13:46:37
再见,那些年我们嘲笑过的IE浏览器
英语学习(2015年6期)2016-01-30 00:37:23