13820421534茜
基于的Web网络应用程序开发的安全策略实践摘要:Web网络应用开发中,安全性是要考虑的关键问题,本文通过开发系统实践,从系统规划阶段、设计开发阶段、发布运行阶段三个方面详细阐述安全策略的实现,总结出如何充分利用的安全机制、数据库安全控制、增强管理员网络安全防范意识,构建一个性能安全的Web应用程序。关键词:Web应用程序;;认证和授权;视图;存储过程1 前言微软公司推出的,可以非常方便和高效地规划、设计、开发和发布Web网络应用程序。笔者利用为新疆职工培训中心开发了运行在校园网上的网络办公管理系统。该系统分为管理部门和教学部门两个角色,实现了数据存储、浏览查询和教学分析统计功能,提高了培训中心的信息化管理和校园网的利用价值。在整个系统的开发过程中,考虑最多的就是安全问题,相信这也是所有开发人员开发Web网络应用程序所必须面对的问题。因此本文针对基于的Web网络应用程序开发的安全问题,以我们开发的系统为例,从3个方面来阐述实际解决策略:(1)系统规划阶段的安全策略;(2)设计开发阶段的安全策略;(3)发布运行阶段的安全策略。希望我们的实践能对利用开发Web网络应用程序的相关技术人员提供参考和借鉴。2 安全策略实践系统规划阶段Web网络应用程序,就是运行在Web应用服务器上的一个虚拟目录及其子目录下的所有文件、网页、模块以及可执行代码的总和。根据系统需求分析,用户分为管理部和教学部(对数据的操作权限有区分),因此建立两个目录分别存放相应的网页文件。另外,还有数据库文件夹、样式文件夹、网页模版文件夹等。而对数据库表的操作文件放在特殊的文件夹bin下,因为该目录是禁止任何浏览器访问的,从而避免了远程客户下载代码的可能性。应用程序根目录下除了上述目录外,还有两个重要的应用程序级文件: 和(下文详细分析)。总之,文件目录的规划是按类别存放文件,重要文件存在bin目录下。设计开发阶段主要从后台的数据库设计、配置文件及前台界面设计三个内容,着重阐述对安全问题的解决策略。数据库设计为了提高访问数据的效率和安全性,能在后台做的事情,就在后台完成,能分开独立做的事情,就分开独立实现。(1)充分利用后台数据库系统的视图和存储过程,如:创建带参数的视图,实现不同角色身份的用户对各自权限范围内的数据访问。(2)报表设计及实现:Web应用程序实现动态报表,开始考虑用的数据控件Repeater,可以自由定义灵活的显示方式,但通常比较麻烦,而且在代码中字段名要出现,即:使用数据容器("字段名")方式来显示数据内容,降低了数据安全性。我们的做法是利用Bussiness Object 公司开发的专业报表软件CrystalReports10设计报表,通过ODBC数据源与数据库连接,生成报表文件(*.rpt)后,在前台利用报表控件CrystalReprotViewer,将报表文件加载到页面实现各种报表。这种把数据源、报表文件、和页面显示文件分开独立实现,不仅丰富了报表显示样式和提高了网络报表生成效率,而且极大地提高了访问数据的安全性。(3)用户口令存储问题:不要将实际的口令存储在数据库表中,因为口令直接放在数据库或文件中存在安全隐患,因此要存储加密后的口令。使用时,例如当用户登录时,对口令加密,然后与数据库中存放的加密口令进行比较。实现步骤如下:首先,导入命名空间:<%@ Import Namespace="" %>其次,编写加密函数EncrytPwd:Function EncrytPwd(Pwd as String,PwdFormat as String)If PwdFormat="MD5" then'下面一行得到用MD5算法加密后的字符串EncrytPwd=(Pwd,"MD5")'下面一行得到用SHA1算法加密后的字符串Else if PwdFormat="SHA1"thenEncrytPwd=(Pwd,"SHA1")End ifEnd 配置文件 的安全设置文件是一个简单的XML文件,专门用于为应用程序配置系统设定、安全性设定、应用程序设定和会话设定。下面分5个内容介绍安全实践策略。(1) 数据库连接字符串常量:Web应用程序网页要大量用到数据库连接,为了提高程序安全性、通用性和可移植性,在配置文件中设置数据库连接字符串常量是很好的方法,在应用程序的文件中添加如下语句:网页文件使用时,用下列代码实现数据库连接:Dim strConn As StringstrConn=("sqlconntion ")'获取数据库连接字符串(2) 认证和授权:HTML表单验证(Forms Authentication),是向开发人员提供确认客户凭证并控制访问权限的技术。在应用程序的文件中添加如下语句:授权:就是让用户拥有有效凭证,允许或拒绝访问Web应用程序。在中添加如下语句:(3) 虚拟路径的设置:不同用户对不同目录访问权限不同,可以设定虚拟目录来实现(4) 设置调试模式提高安全策略:默认情况下,错误信息保存在栈中。如果开启调试模式,在运行中发生错误时,会显示错误行号,方便调试。可以在页面或文件中开启调试模式。例如:<%@ page debug=”true” %>'开启页面级调试模式'开启应用程序级调试模式但发布程序时,要禁用调试模式,否则出错时,有泄露后台代码的隐患。(5) 页面出错处理策略:出错时转向统一的出错页面,而不必在每个网页中写代码,控制转向出错页面,避免了程序运行期间任何未处理的意外发生时,错误页面代码泄露或使用户不知所云的尴尬发生。页面出错处理可以应用下列策略实现:(A)定制出错网页这个设置可以保证当错误出现时,本地用户访问默认出错页,远程用户访问自定义的网页。(B)处理特别的HTTP请求对于HTTP错误状态代码,例如:403禁止,404无法找到,500服务器错误等,可以自定义各自的出错处理页面。如下所示: 界面设计:代码分离和自定义控件(1)代码分离:将程序代码和HTML内容分离,不仅能增强页面的条理性、易读性和团队开发的容易程度,更重要提高网页安全性。如:前台aspx网页:<%@ Register TagPrefix= "iewc" Namespace=""Assembly="" %><%@ Page Language="vb" AutoEventWireup="false" Codebehind=""Inherits=""%>而后台的文件,专门编写代码,实现代码和HTML内容分离。(2)自定义控件:可以根据需要编写自定义控件,更好地提供可重用的封装逻辑,在使用自定义控件前,需要将定义它们的类文件编译成动态库,即:vbc /t:library /r: /r: 将编写好的类文件(.vb)编译成动态库(.dll),可以供以后多次使用,由于封装了逻辑,且生成库,所以安全性得到保障。除上述外,必须要重视记录日志。日志文件分系统日志和用户自定义日志。系统日志,如建立数据库日志文件;自定义日志文件:可以利用文件的session_onStart()事件与session_onEnd()事件实现自定义日志文件维护,例如:记录访问用户的登录名,访问时间,IP地址等信息,在应用程序根目录的文件内添加如下代码:<%@ Import Namespace= ""%>Sub Session_onStart(Sender As Object, E As EventArgs)'每一位客户登录时触发该事件sw=New StreamWriter(("log/"),True,)'将客户IP保存到Session中Session("IP")= ("REMOTE_ADDR") (Now() & "-用户" & Session("IP") & "进入") SubSub Session_OnEnd(Sender As Object, E As EventArgs)'当每一位客户超过会话时间没有和服务器交互,或关闭浏览器后触发该事件sw=New StreamWriter(("log/ "),True,)(Now() & "-用户" &Session("IP") & "退出") 发布运行阶段:主要考虑如下方面(1) 关闭调试模式;(2) 备份转储数据库文件和日志文件;(3) 密码要不断更新;(4) 及时打补丁程序。3总结综上所述,基于的Web网络应用程序开发,在充分利用的安全机制、数据库安全控制、管理员网络安全防范意识的基础上,可以极大提高Web应用程序的安全性能。参考文献[1] [美]Steven 等.用实例学.马燕,闫立军等,译.北京:电子工业出版社,2002.[2] [美]Macro Bellinaso Kevin Web站点高级编程.康博,译.北京:清华大学出版社,2002.[3] [美]John Kauffman 等. 数据库入门经典. 康博,译.北京:清华大学出版社,2002.[4] 章立民. 用实例学 Crystal Report for Visual .北京:电子工业出版社,2004.
幼幼熙熙
朋友你好,你所要的先从我提供的网址中找几篇参考论文,真心希望能够对你有。若不满意我给你些网址你还可以自己再找,祝你好运!中文免费论文地址集锦一、综合类1、蓝之韵论文门类较全。2、学生大论文中心、蜂朝无忧论文网门类很全。4、论文下载中心门类很全。5、论文帝国..
超级能吃的兔兔
在学习网页制作的这几天里,我利用了学习之余的一切可利用的剩余时间,全心全意投入到网页世界,去不断的学习,去不断的探索;同时去不断的充实,去不断的完善自我,在网络的天空下逐渐的美化自己的人生!做好主页,并不是一件容易的事,它包括个人主页的选题、内容采集整理、图片的处理、页面的排版设置、背景及其整套网页的色调等很多东西。理论上的认识:随着Internet在中国的迅速发展,人们日常生活中越来越多地使用这项新的技术来为自己的工作和学习服务.由于WEB页面能把文本、图像、声音、动画、视像等多种媒体信息集于一体,不但使信息的显示更加生动,而且使信息的浏览更为方便,同时WEB页能实现网上交易平台、客户信息反馈方便了企业与客户之间信息交流,因此许多企业纷纷建设具有自己独特风格的网站以增强企业知名度.网页艺术设计是伴随着计算机互联网络的产生而形成的视听设计新课题,是网页设计者以所处时代所能获取的技术和艺术经验为基础,依照设计目的和要求自觉地对网页的构成元素进行艺术规划的创造性思维活动,必然要成为设计艺术的重要组成部分,并随着网络技术的发展而发展。表面上看,它不过是关于网页版式编排的技巧与方法,而实际上,它不仅是一种技能,更是艺术与技术的高度统一。1.标题在个人主页中标题起着很重要的作用,它在很大程度上决定了你整套个人主页的定位。一个好的标题必须有概括性、简短,有特色、容易记,还要符合自己主页的主题和风格。2.内容的采集选好标题后,开始采集内容,内容必须与标题相符,在采集内容的过程中,应注重特色,所谓特色应该是有一些自己的东西。个人主页中的特色,应该突出自己的个性,把自己的兴趣、爱好尽情地发挥出来,因为在网络上不受限制。主页就是在网络上的一个小小家园,在那里,可以放上自己喜欢的任何东西,包括你自己平时喜欢一些文章,一些好听的歌,一些好的动画作品。3.图片做个人主页不能只用文字,必须在主页上适当地加一些图片,增加可看性,俗话说"一图胜千言",我想不无道理,一张处理得好的图片不需要多做任何解释,就能让人一目了然,让人去思考,去了解它。4.网页排版网页页面整体的排版设计也是不可忽略的,很重要的一个原则是合理地运用空间,让自己的网页井井有条,留下必要的空白,人觉得很轻松。5.特色让自己的网页更有特色一些,可适当地加一些声音、动态网页、Java、Applet。实践中的认识:话虽是像上面这样说的,但是真要做起来确是很难.做网页设计不仅要从艺术的角度来考虑而且要从社会大众的认可性来考虑.网页设计必须要服从企业或部门的经营理念来考虑.如果设计的作品很好看但是和企业不搭调那就等于白做.以上就是我对网页设计的认识和总结,虽然从理论上都知道如何去做,但是实际做起来很难.总的来说就是很难突破,很难超越自己.因此在以后的学习中要更加完善自己,突破自己.
asp+access学院网站的设计与实现(论文+程序) 文章摘要:随着互联网的发展,其信息传播效率逐步为人们所关注。越来越多的企业开始走向网络,以通过网络加大对
毕业论文结语写法如下: 在讨论毕业论文结尾写什么之前,让我们讨论一下毕业论文的结论。结论是一篇文章的总结,结论指出论文存在的缺陷问题,指出进一步的研究方向。以便
1 绪论本设计的题目是动态旅游网站系统,它主要依据网络系统及电子商务解决方案结合数据库系统与网站设计的具体工作要求,通过强大的互连网技术,进行旅游网站的宣传、介
你可以搜搜一下大学生计算机论坛cccbbs的毕业设计范例有这个题目,搜搜一下就可以找到
学术堂整理了十五个好写的网页设计与应用方面的毕业论文题目,供大家进行参考:1、基于全景摄影的网页设计研究2、浅谈WAP时代的网页前端设计3、创新网页设计与制作课