ASP[1].NET(C_)大学实用教程-第11章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

ASP.NET(C#)大学实用教程郭洪涛刘丹妮陈明华编著本章知识点应用程序的配置配置Global.asax文件配置Web.config文件网站安全性ASP.NET缓存关于应用程序的配置通过应用程序的配置可以实现对用户的访问权限限制等功能。一个“网站”就可以看成是一个应用程序;所谓应用程序就是添加了虚拟目录的文件夹。一个应用程序中通常包含如下内容:1.bin文件夹及其中的.dll文件2.所有的Web窗体、用户控件和XMLWeb服务文件3.配置文件,包括Global.asax文件和Web.config文件(1)Global.asax文件:该文件是一个声明文件,用来在Web应用程序运行时处理事件,每个应用程序中最多只能有一个Global.asax文件。(2)Web.config文件:ASP.NET资源的配置信息要在一组配置文件中进行设置,这组文件就是指Web.config文件。4.其他附加支持文件Global.asax文件的结构和应用Global.asax文件(也称作ASP.NET应用程序文件)是一个声明文件,该文件用来存放Session对象和Application对象的事件过程。每一个应用程序最多只能有一个Global.asax文件,并且必须存放在应用程序的根目录下。Global.asax文件的结构和应用例11-1是一个利用Global.asax文件实现网站日志的例子。在系统启动、系统关闭、客户登录或退出时在文本文件log.txt中记录有关信息。某次运行后,查看日志文件,结果如图配置Web.config文件Web.config文件是应用程序中的配置文件,该文件中的文本内容采用XML格式编写,用来保存一些常量或者访问权限设置等。Web.config文件的继承关系配置Web.config文件Web.config文件的结构Web.config是XML格式的文件,一个Web.config文件控制着特定应用程序的设置,典型的文件内容如图:配置Web.config文件Web.config文件的结构对常用标记的说明:1.configuration和/configuration存放所有的配置信息,system.web和/system.web存放所有的ASP.NET配置。2.appSettings和/appSettings存放对应用程序的设置信息。3.compilation/用于配置ASP.NET使用的所有编译设置4.customErrors/用于自定义错误信息5.authentication/设置应用程序的身份验证策略。6.trace/可以跟踪代码的执行,以便以后的查看。7.sessionState/中是关于会话信息的设置。配置Web.config文件使用Web.config文件存放常量语法如下:appSettingsaddkey=常量名称value=常量的值//appSettingsWeb.config文件中设置的自定义属性,语法如下:ConfigurationSettings.AppSettings[自定义常量名称];配置Web.config文件例11-2是一个利用Web.config文件存放欢迎信息的例子配置Web.config文件网站的安全性通过对Web.config文件的配置,可以从如下三方面实现对网站的保护:身份认证、授权及保护单个文件夹。1.身份验证(1)Windows身份验证这是验证用户身份的一种非常简单、快捷、易用的方式,但是该种方式只能应用于IE5.0以上版本的浏览器。第一步,要在应用程序的Web.config文件中进行设置,添加如下代码:system.webauthenticationmode=Windows/system.web配置Web.config文件网站的安全性1.身份验证(1)Windows身份验证第二步,需要在IIS中进行设置。打开【Internet服务管理器】,选中要保护的Web站点和应用程序;右击应用程序,选择菜【属性】选项;在弹出的对话框中单击【目录安全性】标签;在【匿名访问和验证控制】区域单击【编辑】按钮;得到如图11-4所示的【验证方法】对话框,然后选择“集成Windows身份认证”。配置Web.config文件网站的安全性1.身份验证(1)Windows身份验证第三步,添加用户。选择【开始】→【程序】→【管理工具】→【计算机管理】菜单命令,打开【计算机管理】窗口。如图11-5所示,选择【用户】,并在右边用户列表框中的右键菜单中选择【新用户】命令,为每个用户添加用户名和密码。配置Web.config文件网站的安全性(2)Passport身份验证这种身份验证是由微软公司提供的一种集中式的身份验证服务。提供了所有已注册成员站点的统一登录。要在服务器上实现它,需要先下载PassportSDK,它还需要安装IIS。配置Web.config文件网站的安全性(3)Forms身份验证这种验证方式将用户名和密码信息存储在数据库文件、文本文件或XML文件中,并在应用程序中添加一个登录页面,没有通过身份验证的用户访问任何页面时,都会被自动引导至该登录页面。客户必须输入用户名和密码信息,它们与文件中存放的相应信息进行比较之后,如果正确则在客户机上创建一个验证Cookie,使客户可以继续访问其他页面。配置Web.config文件网站的安全性(3)Forms身份验证实现Forms身份验证需要如下3个步骤:①建立身份验证,在Web.config文件中添加如下代码:system.webauthenticationmode=Formsformsname=Cookie对象名称loginUrl=登录页面路径/authentication//system.web②在Web.config文件中设置授权。③创建登录页面配置Web.config文件网站的安全性2.授权对不同的用户授予不同的访问权限,需要在Web.config文件中建立authorization元素,设置语句为:authorizationdenyusers=用户列表/allowusers=用户列表//authorization配置Web.config文件网站的安全性3.保护单个文件和文件夹(1)当把Web.config文件放置到应用程序的某个文件夹下时,在该Web.config文件进行的身份验证和授权的设置,作用就是保护其所在的文件夹。通过在Web.config文件中添加如下的XML标记,也能够实现保护特定文件夹,甚至保护特定文件的目的。设置语句为:locationpath=文件/文件夹的路径system.webauthorizationdenyusers=用户列表/allowusers=用户列表//authorization/system.web/location配置Web.config文件例11-4是一个保护单个文件的例子配置Web.config文件例11-5是一个应用了Web.config文件的综合示例ASP.NET缓存技术页面输出缓存该机制将整个ASP.NET页面内容保存在服务器的内存中。当用户请求该页面时,系统从内存中输出相关数据,直到缓存数据过期实现页面输出缓存的一种方法是使用%@OutputCache%缓存指令,声明代码为:%@OutputCacheCacheProfile=NoStore=True|FalseDuration=#ofsecondsLocation=Any+Client|Downstream+Server|None|ServerandClientSqlDependency=database/tablenamepair|CommandNotificationVaryByControl=controlnameVaryByCustom=browser|customstringVaryByHeader=headersVaryByParam=parameternameShared=true%例如:%@OutputCacheDuration=60Location=AnyVaryByParam=None%ASP.NET缓存技术页片段缓存将那些访问频率高、构造成本高且适合于缓存的对象或数据标识出来,然后把它们创建成页面输出缓存的一个缓存项实现方式:将部分内容创建成一个用户控件,然后在其中添加%@OutputCache%缓存指令控件缓存与页面输出缓存%@OutputCache%指令的区别:①控件缓存的%@OutputCache%指令设置在用户控件文件中,而页面输出缓存的%@OutputCache%指令设置在普通ASP.NET文件中;②控件缓存的%@OutputCache%指令中只能设置6个属性,Duratrion,Shared,SqlDependency,VaryByControl,VaryByCustom和VaryByParam,而在页面输出缓存中可以使用的属性有十几个。下面是一条常用的页片段缓存的%@OutputCache%指令:%@OutputCacheDuration=120VaryByParam=CategoryID;SelectedID%ASP.NET缓存技术应用程序数据缓存数据缓存是将数据或DataSet对象等保存到缓存中缺点:应用程序缓存中的数据是易丢失的,数据并不是在整个应用程序生命周期内都存储在内存中。优点:由ASP.NET管理缓存,在项过期、无效和内存不足时移除缓存当中的项,还可以配置应用程序缓存,以便在移除项的时候通知应用程序。实现方法:使用Cache对象,把缓存项存储在服务器端的内存中。例如:Cache[poem]=采菊东篱下,悠然现南山;//向缓存中写入内容stringpoem=Cache[poem].ToString();//从缓存中读取保存的内容ASP.NET缓存技术例11-6是一个应用程序数据缓存示例

1 / 24
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功