打印

[asp.net教程] asp.net中的http模块和处理程序 5

asp.net中的http模块和处理程序 5

现在试图使用用户id“steve”和密码“15seconds”登录系统。输入 http://localhost/webapp2/index.aspx?userid=steve&password=15seconds你将看到下面的欢迎消息:
   
   现在试图使用用户id“mansoor”和秘码“mas”登录系统。输入http://localhost/webapp2/index.aspx?userid=mansoor&password=mas你将看到下面的欢迎消息页面:
   

  现在试图使用错误的用户id和密码组合来登录系统。输入http://localhost/webapp2/index.aspx?userid=mansoor&password=xyz你将看到下面的错误消息:
   
   
    这表明我们的安全模块在起作用了。你可以通过在authenticateandgetroles方法中使用数据库访问代码来扩展该安全模块。
   
    要使所有的部分都起作用,我们必须对web.config文件进行一些修改。首先,由于我们要使用自己的身份验证,因此不需要其它的身份验证机制。为了达到这个目的,改变webapp2的web.config文件中的<authentication>节点,如下所示:
   
  <authentication mode="none"/>
   
    类似地,不允许匿名用户访问我们的web站点。给web.config文件添加下面的语句:
   
  <authorization>
   <deny users="?"/>
  </authorization>
   
    用于至少能够匿名访问用于提供凭证的文件。在web.config文件中使用下面的配置设置信息把index.aspx作为唯一能够匿名访问的文件:
   
  <location path="index.aspx">
   <system.web>
    <authorization>
     <allow users="*"/>
    </authorization>
   </system.web>
  </location>
   
    结论
   
    你可能已经意识到有了http处理程序和模块后,asp.net已经给开发者提供了强大的能量。把你自己的组件插入asp.net请求处理管道,享受它的优点吧。
   
    作为练习,你应该进一步改进程序,使示例身份验证模块更加灵活,并能根据用户的需要进行调整。

TOP

返回顶部
AYBlue

Processed in 0.053144 second(s), 7 queries.

当前时区 GMT+8, 现在时间是 2009-1-10 11:05 京ICP备06054220号

清除 Cookies - 联系我们 - 163K.com - Archiver - WAP