扫描二维码关注

首页 APP开发小程序开发 微信公众号 网站建设 推广运营 关于我们

“学习不仅是掌握知识”

向书本学习,还要向实践学习、向生活学习。消化已有知识,
而且要力求有所发现、有所发明、有所创造

编辑web.config,保证ASP.NET的安全

2019/3/23 12:48:10

编辑web.config,保证ASP.NET的安全

所有.NET的应用程序都将其信息保存在一个基于XML的配置文件里。一般来说,这个.config配置文件位于应用程序可执行文件的目录下。但是,Web应用程序会使用位于应用程序根目录下的web.config文件。用于ASP.NET应用程序的web.config包含的信息和其应用程序大多数的操作都相关。现在剖析一个web.config示例文件,看看在其中找到哪些和安全相关的设置。


配置文件的设置和区段

首先,看一下Listing A里的配置文件的整体结构。这个文件作为XML文档必须有一个根元素把其他所有的元素都包括进来。很奇怪的是,在这里根元素是<configuration>。在根元素之下是<system.web>和<appSettings>区段。<system.web>这一区段会辨别它所包括的用于缺省Web服务器的信息,包括安全信息。<AppSettings>这一区段放置着用于应用程序的所有全局数据。已经说过,数据库连接字符串能够被很好地保存下来。例子里,那里保存了Web网站无DSN的ODBC连接字符串。


自定义错误页面

<system.web>下的第一项是<customErrors>,能够指定一些页面,以便在用户碰到各种错误的时候引导到这些页面。在例子里,如果发生404错误,用户将被引导到/errorpages/FileNotFound.html页面。碰到任何其他错误的时候,用户会被引导到/errorpages/GeneralError.html页面。


验证

<authentication>这一区段定义了服务器进行用户验证这一过程的细节。所支持的三种不同模式是Windows、Forms和Passport。现在来仔细看看每种模式:

Windows验证通过Windows的系统帐号来验证用户,例如活动目录(Active Directory)。Windows验证是最安全的验证形式,对于程序员来说这种模式是很简单的,因为整个过程都是由操作系统来处理的。但是,网站的每个用户都需要一个系统帐号,所以这种模式会被限制在企业内部网(intranet)的应用程序里。
Passport验证使用护照来验证用户,是第二安全的验证方式。其最好的用武之地是大型的、活动的Internet电子商务应用程序,这些程序会验证用户的服务使用费。这种模式是.NET所选择的验证方法。
Forms验证是安全性最低的验证方法,因为必须要由应用程序自己来处理验证过程。但是,这是最有可能在Internet应用程序上使用的模式,因为所需要的管理和维护是最少的。

查一下Listing A就可以看到这个网站使用了Forms验证。可以指定一个希望的域名。在这里,使用的是.ASPXAUTH,其功能和名称其实是名不符实的。只不过是把这个元素放进去,用以提醒它的确有个名字。

还会看到,已经为登录页面指定了相关的URL:/LoginForm.aspx。当用户试图访问一个安全页面时,无法通过验证的用户就会被引导到这个URL。匿名用户,如果允许访问的授权区域的话,就不会被自动送到这个页面。


长沙高新开发区谷苑路186号湖南大学科技园创业大厦429

咨询电话:0731-8225 2399
业务QQ:1020299919
大客户专线:139 7581 8321

友情链接:
Copyright© 2014-2024 湖南省鑫冠计算机系统有限公司 版权所有 ICP备案号:湘ICP备17013418号-1 公安备案号:湘公网安备43019002001544号