1 / 54

《ASP.NET 程序设计 》 配套课件

《ASP.NET 程序设计 》 配套课件. 姓名:杨东霞 信箱: dzxyydx@sohu.com. 第11章 配置应用程序及其它应用. 讲解提纲. 11.1 关于配置应用程序 11.2 配置 Global.asax 文件 11.3 配置 web.Config 文件 11.4 安全考虑 11.5 使用缓存 11.6 调试程序. 本章要点. 配置 Global.asa 文件 配置 web.Config 文件,尤其是读取其中自定义的属性。 如何保证应用程序的安全 如何使用输出缓存 如何调试程序.

ouida
Download Presentation

《ASP.NET 程序设计 》 配套课件

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 《ASP.NET程序设计》配套课件 姓名:杨东霞 信箱:dzxyydx@sohu.com

  2. 第11章 配置应用程序及其它应用

  3. 讲解提纲 • 11.1 关于配置应用程序 • 11.2 配置Global.asax文件 • 11.3 配置web.Config文件 • 11.4 安全考虑 • 11.5 使用缓存 • 11.6 调试程序

  4. 本章要点 • 配置Global.asa文件 • 配置web.Config文件,尤其是读取其中自定义的属性。 • 如何保证应用程序的安全 • 如何使用输出缓存 • 如何调试程序

  5. 本节要点 授课顺序 43 • 教学目标 掌握应用程序的配置和Global.asax文件的配置 • 重点: Global.asax文件的配置 • 难点: Global.asax文件的配置

  6. 11.1 关于配置应用程序 • 什么是应用程序? • 配置应用程序的重要内容: • (1)bin文件夹 • (2)Global.asax文件 • (3)web.Config文件

  7. 11.2 配置Global.asax文件 • 该文件用来存放Session对象和Application对象的事件过程。 • 每一个应用程序只能有1个Global.asax文件,并必须存放在应用程序的根目录下。

  8. 11.2.1 Global.asax文件的基本格式 • 格式: • <Script language="VB" runat="server"> • Sub Application_OnStart(Sender As Object, E As EventArgs) • …… • End Sub • Sub Application_OnEnd(Sender As Object, E As EventArgs) • …… • End Sub • …… • </Script> • 位置: • 应用程序的根目录下,只有一个。 • 其中的事件: • Application_OnStart 、 Application_OnEnd 、Session_OnStart、Session_OnEnd、Application_OnBeginRequest、Application_OnEndRequest

  9. 11.2.2 Global.asax文件示例 • 这是一个网站日志示例,在系统启动、系统关闭、客户登录或退出时在文本文件log.txt中记录有关信息。 • 两个文件 • Global.asax 用来记录日志 • 11-2.aspx 用来将日志信息显示在页面上

  10. Global.asax文件 Global.aspx

  11. 11-2.aspx 读取日志信息 11-2.aspx

  12. 本节要点 授课顺序 44 • 教学目标 掌握web.Config文件的配置 • 重点: web.Config文件的配置 • 难点: web.Config文件的配置

  13. 11.3 配置web.Config文件 • web.Config文件用来保存一些常量或者访问权限设置等。 • 它的配置是层次式的。 • 所有的应用程序都会继承C:\WinNT\Microsoft.NET\Framework\(版本号)\config\machine.config文件,大部分常用的设置在该文件中都已经配置好了。

  14. 11.3.1 web.Config文件的基本格式 web.Config

  15. 11.3.2 读取自定义属性示例 • 在web.Config自定义属性 • <appSettings> • <add key=“常量名称”value=“常量的值"/> • </appSettings> • 读取自定义属性的语法 • ConfigurationSettings.AppSettings(自定义常量名称)

  16. 读取自定义属性示例 11-4.aspx

  17. 11.4 安全考虑 • 认证和授权 • 认证的三种方式 • (1)基于Windows的认证 • (2)基于表单的认证 • (3)基于微软的Passport的认证

  18. 11.4.1 基于Windows的认证 • 什么是Windows认证? • Windows认证的三个步骤: • 第1步:在web.Config中设置 • 第2步:在IIS中设置 • 第3步:添加用户

  19. 第1步:在web.Config中设置 • 在web.Config文件中添加如下语句: • <system.web> • <authentication mode="Windows" /> • </system.web>

  20. 第2步:在IIS中设置 • 选择【开始】→【程序】→【管理工具】→【Internet服务管理器】菜单命令打开IIS 。 • 在“虚拟目录属性”对话框的“目录安全性”标签中单击【编辑】按钮,然后选择认证方式。

  21. 第3步:添加用户 • 依次选择【开始】→【程序】→【管理工具】→【计算机管理】菜单命令打开对话框。 • 如图选择“用户”,并在右边用户列表框中的右键菜单中选择【新用户】命令,即可为每一个客户添加用户名和密码

  22. 11.4.2 基于表单的认证 • 什么是基于表单的认证? • 步骤: • 第1步:在web.Config中设置: • 第2步:建立登录页面。

  23. 第1步:在web.Config中设置 • 在应用程序的web.Config文件中添加如下语句: • <system.web> • <authentication mode="Forms" > • <forms name="认证cookie名称" loginUrl="登录页面路径" /> • </authentication> • </system.web>

  24. 第2步:建立登录页面 • 重要语句如下: • FormsAuthentication.SetAuthCookie(用户名称,true | false) • Response.Redirect(指定页面,一般为首页) • 也可以合为一句: • FormsAuthentication.Authenticate(用户名称,true | false) • 退出登录语句: • FormsAuthentication.SignOut()

  25. 11.4.3 关于授权 • 什么是授权? • 在web.Config中添加如下语句: • <authorization> • <deny users="用户列表" /> • <allow users="用户列表" /> • </authorization>

  26. 11.4.4 网络安全综合示例 • 这个示例要求用户必须注册、登录后才能浏览学习资料。 • 管理员用户登录后就可以管理普通用户。

  27. 网络安全综合示例结构 • web.Config web.Config配置文件 • default.aspx 应用程序首页 • userinfo.mdb 这是用户信息数据库 • log文件夹 • login.aspx 登录页面(login.aspx) • logout.aspx 退出登录页面 • adduser.aspx 新用户注册页面 • admin文件夹 • admin.aspx 管理员页面 • course 文件夹 用来存放学习资料页面(1.aspx、2.aspx和3.aspx)及配套文件,不用管它。

  28. (1)web.Config Web.Config

  29. (2)default.aspx • 这只是一个普通页面文件,通过验证后,就可以打开该页面,进行学习。 default.aspx

  30. (3)userinfo.mdb • 保存用户信息的数据库文件。 • 包含1个表users,其中有5个字段,分别为id(序号)、username(用户名)、mypassword(密码)、email(E-mail)、submit_date(注册日期)。 • 其中username不能重复,所以设为主键。

  31. (4)login.aspx Login.aspx

  32. (5)logout.aspx logout.aspx

  33. (6)adduser.aspx • 这是一个普通的添加用户的页面。 • 注意因为username是主键,所以如果用户名已经被其它人注册,将会发生错误。然后提示客户重新注册即可。

  34. (7)admin.aspx • 这也是一个普通的数据库管理页面。 • 当管理员用户admin通过认证后,就可以打开这个页面管理普通用户。 • 由于在web.Config中已经设置了,普通用户是无法打开该页面的。

  35. (8)运行结果 Login.aspx default.aspx admin.aspx adduser.aspx

  36. 11.4.5 其它安全考虑 • 修改数据库的文件名和扩展名,尽量让别人猜不出来。 • 因为授权只对.aspx文件有效,对HTML文件无效。解决方法是修改扩展名为.aspx。 • 数据库中用户密码也可以加密 • (关于加密请看后面示例)

  37. 利用SHA1和MD5加密示例 11-4.aspx

  38. 11.5 使用缓存 • 什么是缓存? • 缓存的三种方式: • 页输出缓存 • 页片断缓存 • 数据缓存

  39. 11.5.1 页输出缓存 • 页输出缓存,就是可以将第一次请求的页面储存在内存中,以后再次请求时直接从内存中调用。 • 实现页输出缓存的方法是在页面顶端添加如下缓存指令: • <%@ OutputCache Duration="60" Location="Any" VaryByParam="None" %> • 说明: • Duration表示缓存时间 • Location表示缓存存放位置 • VaryByParam可以在缓存页面中添加参数

  40. 11.5.2 页片断缓存 • 所谓页片断缓存,就是只缓存页面中部分内容。 • 实现方法是将部分内容创建一个用户控件,然后在其中添加如11.5.1节中的缓存指令即可。

  41. 11.5.3 数据缓存 • 所谓数据缓存,就是将数据或DataSet对象等保存到缓存中。 • 实现方法是利用Cache类,它有点类似于Session对象和Application 对象

  42. 数据缓存示例 11-9.aspx

  43. 11.6 调试程序 • 讲解内容 • 使用Response.Write方法 • 使用Debug • 使用trace(跟踪) • 使用SDK 调试器

  44. 11.6.1 使用Response.Write方法 • 可以使用Response.Write方法在程序中输出中间结果。 • 尤其在数据库程序开发时,可以用它在页面上输出SQL语句。 • 使用该方法时结合注释和Response.End方法。

  45. 使用Response.Write方法示例 • 假如某一条SQL语句总是执行错误,这时候就可以在执行执行该语句之前使用Response.Write 方法将SQL语句输出到页面上,方便大家仔细查看。 • 具体方法: • strSql=“……” • Resonse.Write(strSql) • Response.End • ……

  46. 11.6.2 使用Debug • 有时候发生错误时,并不告诉你错误发生在哪一行,就可以在页面顶端添加 • <%@ Page debug="true"%> • 或者,在web.Config中添加 • <compilation debug="true" /> • 当发生错误时,就可以显示错误的具体信息。

  47. 11.6.3 使用trace(跟踪) • 所谓trace,指的是跟踪。它可以对程序中变量的值和代码执行情况进行跟踪。它分为两种:页面跟踪和应用程序跟踪。 • 实现页面跟踪只要在页面顶端添加 • <%@ Page trace="true"%> • 执行时,就会在页面上显示详细跟踪信息。 • 实现应用程序跟踪只要在web.Config中添加 • <trace enabled="true" /> • 执行完毕后,它会将跟踪情况保存到一个系统文件trace.axd中。在浏览器中输入http://localhost/test3/trace.axd就可以显示跟踪信息。

  48. 11.6.4 使用SDK 调试器 • .NET框架提供了一个很好的调试器,可以逐行调试程序。该调试器的位置一般位于: • C:\Program Files\Microsoft.NET\FrameworkSDK\GuiDebug\DbgCLR.exe • 调试的具体步骤如后:

  49. 第1步 • 打开调试器,在其中打开要调试的文件11-9.aspx。

  50. 第2步 • 打开浏览器,输入http://localhost/test3/11-9.aspx

More Related