基于BS开放式实验室教学管理系统毕业论文_第1页
基于BS开放式实验室教学管理系统毕业论文_第2页
基于BS开放式实验室教学管理系统毕业论文_第3页
基于BS开放式实验室教学管理系统毕业论文_第4页
基于BS开放式实验室教学管理系统毕业论文_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、. . . . 基于B/S的开放式实验室教学管理系统(XX 计算机与信息工程学院 )摘 要:随着高校管理变革的逐步推进,实验室建设进一步规化、复杂化,高校实验室管理工作也变得更加繁重和复杂。为了便利管理工作的展开,提高工作效率,利用计算机来进行辅助管理,以简化我们的工作,成为需要。本系统正是基于此而进行开发设计。系统采用.NET框架和三层结构,完全B/S模式,纯面向对象思想(OOP),利用SQL Server 2000作为数据库管理工具,模块复用率高、系统维护代价小,方便、灵活、高效。关键词:ASP.NET;B/S;OOP;SQL;管理系统1 绪论1.1 开发背景实验教学的核心目的是培养和提高

2、学生的实践能力和创新能力。传统的实验教学模式仅是完成教学大纲规定的实验容,且验证性实验较多,不利于学生创新精神与实践能力的培养。在以素质教育和创新教育为核心的新的高等教育形势下,这种培养方式远不能满足学生能力发展的需求。为解决这一矛盾,实验室实行开放教学已势在必行1。而实验室的开放,使实验室管理出现了新情况、新问题。实验设备维护、实验教师工作量、实验安排等问题使得开放实验室建设受到极大的阻碍。为实现开放实验室建设得以顺利开展,开放实验室管理得以高效、有步骤地进行,更新实验教学体制,实施开放式管理是实行开放式实验教学的保证。结合开放式实验室建设,利用Internet建立开放实验室管理系统是急需解

3、决的问题。它改革了旧的教学模式,建立了新的体系,大大提高了实验室的利用率和学生学习的积极性,并把管理人员从繁重的管理工作中解脱出来。为此我针对以上情况,设计和实现了此系统。1.2 系统功能通过设计开发,本系统可以为学生提供实验选课的网上平台,学生只要在任何一台上网的计算机上就可以浏览所要了解的实验信息,并通过用户验证登录后,找到自己感兴趣的实验进行预约、查询等。促进学生学习的积极性。本系统为教师提供在线查看学生的实验报告、批改实验报告、查看学生做实验的记录等。系统管理员可在线进行系统信息更新和维护。开放式实验室教学管理系统把教师从繁重的实验管理工作中解脱出来,投入到实验教学方法和容的研究上来,

4、从而提高实验管理水平。1.3 开发工具1.3.1Visual studio.NET 2005Visual studio.NET 2005包含了一系列高效的、智能的开发工具,不论是为开发初学者,还是为经验丰富的企业开发团队都提供了四个全新的、强大的功能:(1)全方位的工具平台 不论是编程初学者还是富有经验的企业开发团队的一员,都将为其提供高效的开发工具。(2)减少开发的复杂度 确保能更加轻松发布基于Framework 的解决方案,包括 Windows、Web、移动和基于 Office 的应用。(3)第三方的生态系统 允许利用来自Visual Studio 行业合作伙伴的参与研发的产品,并体验用来

5、补充 Visual Studio 2005 第三方解决方案的全面部署2。(4)改善团队的沟通 提供高效智能的生命周期工具,通过使用 Visual Studio 2005 Team System,来增强 IT 周期参与者之间的交流与协作2。1.3.2 SQL Server 2000SQL Server 2000是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将

6、SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用3。SQL Server 2000是Microsoft 公司推出的SQL Server 数据库管理系统的新版本。该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98 的膝上型电脑,到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台

7、使用4。1.4 开发语言A、C#,脚本语言:Jscript/V。1.5 开发思想基于.NET框架,系统架构采用三层结构(用户表示层、业务逻辑层、数据访问层),B/S模式,完全面向对象。ASP.NET可以使用.NET平台快速方便的部署三层架构。ASP.NET革命性的变化是在网页中也使用基于事件的处理,可以指定处理的后台代码文件,可以使用C#,VB,J#作为后台代码的语言。.NET中可以方便的实现组件的装配,后台代码通过命名控件可以方便的使用自己定义的组件。显示层放在ASP.NET页面中,数据库操作和逻辑层用组件来实现,这样就很方便的实现了三层架构。2 需求分析2.1 系统的功能结构图开放式实验室

8、教学管理系统后台 前台学生登录管理员登录教师登录查询实验成绩批改实验报告浏览实验信息预约实验个人资料管理管理学生实验报告系统设置管理员管理实验信息管理教师信息管理学生信息管理图1系统功能结构图2.2 系统的性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,系统应该满足以下的性能需求:(1)系统处理的准确性和与时性系统处理的准确性和与时性是系统的必要性能。在系统设计和开发过程中,要充分考虑系统当前和将来可能承受的工作量,使系统的处理能力和响应时间能够满足用户对信息的处理。由于系统的查询功能对于整个系统的功能和性能完成很重要。从系统的多个数据来源来看,学生信息查询、实验信息查询、预约结果

9、查询、实验成绩查询与预约实验、撤消预约,其准确性很大程度上决定了系统的成败。因此,在系统开发过程中,系统采用优化的SQL语句与安全扩展存储过程来保证系统的准确性和与时性。(2)系统的开放性和系统的可扩充性系统在开发过程中,应该充分考虑以后的可扩充性。例如实验信息属性添加、修改,用户查询的需求与管理工作的分级管理,信息输出打印报表等模块也会不断的更新和完善。所有这些,都要求系统提供足够的手段进行功能的调整和扩充。而要实现这一点,应通过系统的开放性来完成,既系统应是一个开放系统,只要符合一定的规,可以简单的加入和减少系统的模块,配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。(3)系

10、统的易用性和易维护性系统是直接面对使用人员的,而有些使用人员往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的在线帮助,缩短用户对系统熟悉的过程。系统中涉与到的数据是高校实验室相当重要的信息,因此系统为不同角色的用户提供了方便的管理后台进行数据管理,特别为系统管理员提供了数据备份,日常安全管理,防止系统意外崩溃等功能。(4)系统的响应速度系统设计中摒弃大量数据冗余,提出了优化数据库的解决方案,大量使用存储过程,大大提高系统响应时间和速度。系统在日常处理中

11、的响应速度为秒级,达到实时要求,以与时反馈信息。严格保证操作人员不会因为速度问题而影响工作效率。2.3 系统的数据需求系统的数据需求包括如下几点:(1)数据录入和处理的准确性和实时性数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。因此,本系统设计时对数据输入进行了合法性较验,确保数据的准确性。在系统中,数据的输入与处理往往是大量的,因此系统拥有批处理能力,以保证迅速的处理数据。(2)数据的一致性与完整性由于系统的数据是共享和关联的,所以如何保证这些数据的一致性,是系统必须解决的问题。为解决这一问题,系统创建了表间关系,并定义了触发器、完整

12、性约束,严格约束数据的更新与删除,减少数据冗余,增强数据一致性与完整性。(3)数据的共享与独立性整个系统的数据是共享的。然而,从系统开发的角度上看,共享会给设计和调试带来困难。因此,应该提供灵活的配置,使各个分系统能够独立运行,而通过人工干预的手段进行系统数据的交换。这样,也能提供系统的健壮性5。2.4 系统的运行要求系统的硬件和软件的配置如下:系统软件:Windows 2003 Server 、IIS 6.0 、.NET Framework 2.0数据库管理系统:SQL Server 2000硬件要求:Pentium III 450以上、 512M RAM、硬盘80G、100M网卡3总体设计

13、在前一阶段,通过需求分析,我们对系统的定义与功能模块有了整体描述。在下面的数据库设计中实现系统各实体定义,实体间的关系与数据信息流在关系数据库中的映射结果和数据信息的物理存储问题。在以下的详细设计中将对在本阶段中对系统所做的所有详细设计进行说明。在本阶段中,确定应该如何具体地实现所要求的系统,从而在编码阶段可以把这个描述直接翻译成用具体的程序语言书写的程序。主要的工作有:根据在需求分析中所描述的数据、功能、运行、性能需求和系统所确定的处理流程、总体结构和模块外部设计,设计软件系统的结构设计、逐个模块的程序描述(包括各模块的功能、性能、输入、输出、算法、程序逻辑、接口等等),以与下面的几个问题:

14、(1)有效实现三类角色(学生、教师、管理员)的业务逻辑。(2)判断信息的正误并采取相应的校验处理步骤。(3)进行数据库的查询、修改工作。(4)接受并判断错误,输出相应的出错消息。本系统主要由三部分组成:学生系统模块、教师系统模块、系统管理员模块。下面将详细介绍各模块的业务逻辑。(1)学生系统模块总体业务逻辑 学生想进入系统进行开放实验预约,必须先注册,否则学生是不能进入系统进行预约的。系统在此处利用存储过程封装了此处理过程,安全性高,防止非法用户进行SQL注入。l 浏览实验信息学生在线浏览实验信息,查看系统为实验信息设置的上限人数,当上限人数未满时,该实验才可进行预约,否则不能进行预约。并且浏

15、览的实验信息中全部为当前时间点后进行的实验。l 预约实验凡进行某实验预约的学生,不可再重复进行该实验预约。若实验信息中上限人数不足,就可预约,直至预约人数达到上限人数或者时间超出实验信息规定的实验时间。否则不能进行预约。l 提交实验报告凡是进行预约实验的学生必须在预约实验完成后三天之将实验报告提交,否则系统自动设置为不可提交。l 预约实验结果查询学生可按给定的关键字进行预约实验结果查询,查看自己预约的实验是否通过系统审核。若通过,则必须按时到实验地点参加开放实验,否则系统会记录该生一次未参加实验,超过三次,系统自动将该生信息冻结,以后不能进行预约实验。若未通过系统审核,系统会给出不通过的原因。

16、l 实验报告成绩查询学生若按时提交实验报告,辅导教师会在规定的时间为学生批改实验报告,并给出评定级别,每一级别在系统中都对应一定的分数权值。学生可按指定的关键字进行成绩查询。l 编辑个人信息学生在进入个人资料管理界面后,可进行个人信息编辑,包括已注册的全部信息和提交的实验报告,预约的实验等。l 撤消实验预约若出现特殊情况,学生不能按时参加实验,学生也可进行撤消实验预约。但必须是在实验开始前,否则系统不会显示该实验信息,也就不能进行撤消操作。l 查看个人实验记录(2)教师系统模块总体业务逻辑l 浏览学生的实验报告教师在进行批改学生实验报告前,可浏览学生的实验报告,为批改提供容依据。l 进行实验报

17、告批改,登录成绩。教师可在线进行批量学生实验报告批改,为每一个学生选择评定级别,点击提交按钮,可进行批量成绩级别录入。(3)系统管理员模块总体业务逻辑l 学生信息管理 管理员可管理已注册的学生信息。l 教师信息管理管理员可管理教师信息,并对新入职教师进行信息入库。l 实验信息管理管理员可对实验信息进行管理,并可添加新的预约实验信息。l 管理员信息管理系统超级管理员可进行权限授权给一般管理员,一般管理员也可进入授权操作。这样分级权限管理,方便管理操作,减轻系统维护工作量。l 系统设置系统管理员可对系统信息与参数进行预定设置。4 详细设计4.1 数据库设计数据库是管理信息系统的核心,一个良好的数据

18、库结构既具有数据冗余少、操作处理过程简单等特点,同时也应具有信息查找比较容易、系统开销低等特点6。本系统在进行数据库设计时,先根据在需求分析中得到的业务数据流,进行高度抽象得出系统实体,构造E-R图,然后再将E-R图转换生成特定的DBMS支持下的关系模式,再对确定的关系数据模式进行优化,最后确定数据的物理存储。4.1.1 概念结构设计概念结构设计的重点在于信息结构的设计,它是整个数据库系统设计的关键。它独立于逻辑结构设计和DBMS。现实世界中一组具有某些共同特性和行为的对象就可以抽象为一个实体。对象类型的组成成分可以抽象为实体的属性。为此本系统从业务逻辑数据流中抽象出各个实体:学生、教师、管理

19、员、实验课程、实验报告等。并根据系统实际确定各实体之间的关系。基于以上对系统数据信息流的分析和抽象,我们可以设计出本系统的E-R图(实体-联系图)如下:图2学生E-R图图3管理员E-R图4.1.2 逻辑结构设计设计逻辑结构应该选择最适于描述与表达相应概念结构的数据模型,然后选择最合适的DBMS。设计逻辑结构时要将概念结构转换为一般的关系、网状、层次模型,并将转化来的关系、网状、层次模型向特定DBMS支持下的数据模型转换,对数据模型进行优化,最后再设计外模式。由此,我们将概念结构得出的结果(E-R图)向特定DBMS支持下的数据模型转换得出如下表:表1 Student(学生)字段数据类型长度描述S

20、idnchar10学号(主键)Snamechar8Sexvarchar2性别Pwdvarchar20密码Gradevarchar50年级Majorvarchar50专业Classvarchar50班级Phonevarchar50Emailvarchar50Abstracttext16备注表2 Major(专业)字段数据类型长度描述Midvarchar50专业编号(主键)Majorchar8专业名称表3 Grade(班级)字段数据类型长度描述Midvarchar50专业编号(主键)Gidint4班级编号(主键)Gradevarchar 50班级名称表4 Lib_Info(实验信息)字段数据类型长

21、度描述Cidnchar10实验编号(主键)Cnamevarchar50实验名称Ccontenttext16实验容Wantedint4预约限制人数Realint4实际预约人数Datedatetime8时间Addressvarchar50地点Scoreint4实验学分Teachervarchar8辅导教师Workertext8工作人员表5 Lib_Book(预约实验)字段数据类型长度描述Cidnchar10实验编号(主键)Sidnchar10学生编号(主键)Checkint4是否审核表6 Lib_Report(实验报告)字段数据类型长度描述Cidnchar10实验编号(主键)Sidnchar10学

22、号(主键)Tidint4教师编号Titlechar10实验题目Contentchar10实际容Abstracttext16备注Scoreint4实验学分表7 Lib_Public(实验发布)字段数据类型长度描述IDint4实验报告编号(主键)Titlevarchar50报告题目Contenttext16报告容Timedatetime8添加时间表8 Teacher(教师)字段数据类型长度描述TIDint4教师编号(主键)Tnamechar10教师Tsexchar2教师性别Tpwdvarchar50密码Tphonevarchar50在对系统进行数据库设计时,为了对关系模式进一步优化和完善,系统通过

23、设置实体唯一主健、数据类型与长度约束来保证系统实体的完整性,数据正确的域完整性。系统还设置了表间约束关系来维护表与表之间数据一致性的参照完整性。表间约束关系如图4: 图4表间的约束关系前面我们根据用户需求设计了局部应用视图,这种局部应用视图只是概念模型,用E-R图表示。在我们将概念模型转换为逻辑模型后,即生成了整个应用系统的模式后,还应该根据局部应用需求,结合具体DBMS的特点,设计用户的外模式。目前关系数据库管理系统一般都提供了视图概念,支持用户的虚拟视图。我们可以利用这一功能设计更符合局部用户需要的用户外模式。定义数据库模式主要是从系统的时间效率、空间效率、易维护等角度出发。由于用户外模式

24、与模式是独立的,因此我们在定义用户外模式时应该更注重考虑用户的习惯与方便。为此,系统为不同角色的用户定义了符合自己需求的视图7。以下定义的视图是为学生查询预约实验返回查询结果而设计的特定视图。图5下面是定义视图的相关代码:CREATE VIEW dbo.View_lib_book_resultASSELECT dbo.Student.Sid AS 学号, dbo.Lib_Info.Cid AS 实验号, dbo.Student.Sname AS , dbo.Lib_Info.Cname AS 实验名, dbo.Lib_Book.Check AS 审核, dbo.Lib_Info.Date AS

25、 时间, dbo.Lib_Info.Address AS 地点FROMdbo.Lib_Info INNER JOIN dbo.Lib_Book ON dbo.Lib_Info.Cid = dbo.Lib_Book.Cid INNER JOIN dbo.Student ON dbo.Lib_Book.Sid = dbo.Student.Sid4.2 关键模块设计4.2.1 学生功能模块1、学生登录学生登录界面如图6:图6学生登录学生登录后进入主界面如图7:图 7 系统主界面关键代码:protected void btnStuLogin_Click(object sender, EventArgs

26、 e) /登录系统 string stuID = this.txtStuID.Text; string stuPwd = this.txtStuPwd.Text; student stu = new student(); /定义一个学生对象 if (stu.checkStu(stuID, stuPwd) 0) /核实学生记录是否在数据库中存在 SessionstuID = stuID; Response.Redirect(/student/Default.aspx); else this.lbstu.Visible = true; this.lbstu.Text = 错误提示:用户名或密码错误

27、,请重新输入!; 2 、学生预约实验图8 学生预约实验关键代码:public partial class student_book : System.Web.UI.Pageprotected void Page_Load(object sender, EventArgs e) if (!this.IsPostBack) if (check_number() /核实该实验人数是否已经超出上限 if (check_stu() /核实学生是否已经预约该实验 Response.Write(alert(对不起,您已经预约了此实验。不能再对此实验进行预约!);window.location.href =

28、book_online.aspx;); else update_lib_info(); book(); else Response.Write(aalert(对不起,此实验已经预约人数足够。不能再对此实验进行预约!);window.location.href = book_online.aspx;); protected void book() /预约实验 string cid = Request.QueryStringcid; string strsql = insert into Lib_Book values( + cid + , + SessionstuID + ,1); studen

29、t stu = new student(); stu.ExecuteSQL_operation(strsql); Response.Write(alert(恭喜您,您实验预约成功);window.location.href = book_online.aspx;); protected void update_lib_info() /更新实验实际预约人数 string cid = Request.QueryStringcid; string strsql = update Lib_Info set real=real+1 where Cid=+cid+; student stu = new s

30、tudent(); stu.ExecuteSQL_operation(strsql); public bool check_stu() /核实学生是否已经预约该实验 string cid = Request.QueryStringcid; string strsql = select * from Lib_Book where Sid=+SessionstuID+ and Cid=+cid+; string strconn = ConfigurationSettings.AppSettingsstrconn; SqlConnection conn = new SqlConnection(str

31、conn); conn.Open(); SqlCommand cmd = new SqlCommand(strsql, conn); SqlDataReader sdr = cmd.ExecuteReader(); if (sdr.Read() return true; else return false; protected bool check_number() /核实该实验人数是否已经超出上限 string cid = Request.QueryStringcid; string strsql = select * from Lib_Info where Cid= + cid + ; s

32、tring strconn=ConfigurationSettings.AppSettingsstrconn; SqlConnection conn = new SqlConnection(strconn); SqlCommand cmd = new SqlCommand(strsql,conn); conn.Open(); SqlDataReader sda = cmd.ExecuteReader(); if (sda.Read() int wanted = int.Parse(sda.GetValue(3).ToString(); int real = int.Parse(sda.GetV

33、alue(4).ToString(); if (real wanted) return true; else return false; else return false; 3、预约实验信息查询图9 预约实验信息查询关键代码:public partial class student_search_lib : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void btnOK_Click(object sender, EventArgs e) string strconn =

34、ConfigurationSettings.AppSettingsstrconn; string strsql = ; if (this.rbtCid.Checked) / 当选择实验号时 strsql = select * from View_lib_book_result where 实验号= + this.txtTitle.Text + ; if (this.rbtStuID.Checked) / 当选择学号时 strsql = select * from View_lib_book_result where 学号= + this.txtTitle.Text + ; if (this.r

35、btSubTitle.Checked) /当选择实验题目时 strsql = select * from View_lib_book_result where 实验名 like% + this.txtTitle.Text + %; SqlConnection conn = new SqlConnection(strconn); SqlDataAdapter sda = new SqlDataAdapter(strsql, conn); /创建一个数据适配器对象 DataSet ds = new DataSet(); /创建一个数据记录集 sda.Fill(ds, resultds); /用数据

36、适配器对象填充数据集 this.Panel1.Visible = true; this.GridView1.DataSource = ds.Tablesresultds.DefaultView; /绑定到数据源 this.GridView1.DataBind(); /绑定到GridView1控件 4.2.2教师功能模块教师批改学生实验报告如图10所示:关键代码:protected void But_Click(object sender, EventArgs e) for (int i = 0; i GridView1.Rows.Count; i+) CheckBox cb = this.Gr

37、idView1.Rowsi.FindControl(CheckBox1) as CheckBox; if (cb.Checked) string sid = (Label)GridView1.Rowsi.Cells1.FindControl(Label1).Text; string cid = GridView1.Rowsi.Cells6.Text; string grade = (DropDownList)GridView1.Rowsi.Cells10.FindControl(ddlCatagory).Text; if (grade = 请选择级别) Response.Write(alert

38、(请选择级别!);); else teacher tea = new teacher(); tea.set_socre(sid, cid, grade); Response.Write(alert(批改成功!);); show_lib_report(); 图10 教师批改学生实验报告4.2.3系统管理员功能模块(1)学生信息编辑如图11所示:关键代码:protected void btnEdit_Click(object sender, EventArgs e) string sid = Request.QueryStringsid; / 接收上一页编辑管理页面传过来的学号值。 student

39、 stu = new student(); stu.stuID = sid.ToString(); stu.stuName = this.txtName.Text; if (this.rbtMale.Checked) stu.stuSex = 男; else stu.stuSex = 女; stu.stuPwd = this.txtPwd.Text; stu.stuGrade = this.DropDownList2.SelectedItem.Text; stu.stuMajor = this.DropDownList1.SelectedItem.Text; stu.stuClass = th

40、is.DropDownList3.SelectedItem.Text; stu.stuPhone = this.txtPhone.Text; stu.stuEmail = this.txtEmail.Text; stu.stuAbstract = this.TextArea1.Value; if (stu.update_student(stu) / 更新学生记录 Response.Write(alert(恭喜您,您修改信息成功!);window.location.href(stu_Edit.aspx);); else Response.Write(alert(很抱歉,修改信息出现错误!请返回继

41、续修改!);window.location.href(stu_Edit.aspx);); 图11 学生信息编辑 (2)实验报告信息删除如图12所示:图12 实验报告信息删除关键代码:public partial class student_stu_mag_Delete_report : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) if (!this.IsPostBack) string strconn = ConfigurationSettings.AppSettingsstrconn; Sql

42、Connection conn = new SqlConnection(strconn); string strsql = delete from lib_report where Cid=+Request.QueryStringcid+and Sid=+SessionstuID+; student stu = new student(); if (stu.ExecuteSQL_operation(strsql) /删除实验 Response.Write(alert(删除成功);window.location.href(lib.aspx);); else Response.Write(aler

43、t(删除失败);window.close();); 5 系统安全性与策略5.1 网络安全针对在互联网上运行的B/S结构的系统来说,安全性置关重要。对于本系统安全性方面而言,设计时分为硬件方面和软件方面。硬件方面:系统设置了如图13所示的网络布局拓扑图:Web服务器数据库服务器Internet防火墙交换机路由器客户端客户端图13 系统网络拓扑图一般来说,对B/S结构的破坏主要来自Internet/Intranet的袭击,可采用防火墙技术来保障系统的安全性。一个防火墙(作为阻塞点、控制点)能极提高一个部网络的安全性,并通过过滤不安全的服务而降低风险。由于只有经过精心选择的应用协议才能通过防火墙,所

44、以网络环境变得更安全。利用防火墙可以禁止诸如众所周知的不安全的 NFS 协议进出受保护网络,这样外部的攻击者就不可能利用这些脆弱的协议来攻击部网络。防火墙同时可以保护网络免受基于路由的攻击。防火墙应该可以拒绝所有以上类型攻击的报文并通知防火墙管理员。软件方面:在软件方面,MS SQL Server 2000数据库管理工具中系统安全设置为Windows和SQL Server混合模式。在系统开发中采用SQL身份验证,在ASP.NET配置文件WebConfig中设置字符串: 通过此设置防止非法人员远程数据库,确保系统数据安全。在系统登录方面,系统高效利用存储过程,快捷传递参数,防止非法人员进行SQL

45、流入。在处理业务逻辑方面,多处利用视图,为不同用户展示了不同的操作界面,严格保护数据安全,高效利用存储过程,使模块集成化、复用率高,维护代价小,安全性强。5.2 身份验证下面介绍一下ASP.NET的身份验证机制,并结合本系统采用的Forms验证方法向大家介绍。ASP.NET通过身份验证提供程序(即包含验证请求方凭据所需代码的代码模块)来实现身份验证。ASP.NET身份验证提供程序:Forms身份验证:通过该Forms身份验证系统利用 客户端重定向将未经身份验证的请求重定向到某HTML窗体。用户提供凭据并提交该窗体。如果应用程序对请求进行身份验证,系统会发出一个Cookie,在其中包含用于重新获

46、取标识的凭据或密匙。随后发出的请求在请求头中具有该Cookie,ASP.NET事件处理程序使用应用程序开发人员指定的任何验证方法对这些请求进行身份验证和授权8。Password身份验证:由Microsoft提供的集中身份验证服务,该服务为成员站点提供单一登录和核心配置文件服务。Windows 身份验证:ASP.NET同时使用Windows身份验证和Microsoft Internet信息服务(IIS)身份验证。IIS以下三种方式之一执行身份验证:基本、简要或集成Windows身份验证。在IIS身份验证完成后,ASP.NET使用已验证的身份来授权访问9。在本系统我们采用Forms验证方式,当自定义的验证程序确认用户身份合法时,可以让Forms验证系统发出Cookie, Cookie中除了包含验证票证之外,还可以通过程序写入被验证用户的标识信息,比如学生编号,然后使用该Cookie访问个性化的信息。Forms验证方式还可保证有权限要求的页面无法被匿名用户访问。例如,后台管理页面是不能被匿名用户访问的。如果该用户想进入该页面,则被重定向到指定页面。要实现上述功能,只需在配置文件We

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论