zoukankan      html  css  js  c++  java
  • FormsAuthentication 简单使用

      网站分为前台后后台管理页面,一般前台部设置用户访问权限,任何用户都可访问,但后台必须是注册用户才能登陆。
    【IIS 验证机制】
      
    Asp.net验证分为两步。首先,IIS验证当前用户访问网站所使用的windows帐号是否有权限。如果IIS访问被配置为anonymous,则任何用户都能访问页面。
      
    然后,在IIS验证完毕后,ASP.net开始执行自身的验证。验证模式可以在web.config文件中配置,只要在config文件中写上<authentication mode="Forms" />,那么ASP.net就知道使用FormsAuthenticationModule 类进行验证。

    【Forms Authentication 控制流程】
       第一步:用户访问default.aspx页面,IIS通过了验证,ASP.Net发现 
    authorization元素中包含<deny users="?" />的标签。
       第二步:服务器寻找包含验证信息的cookie,如果没有找到这个cookie,用户将被重定向到登陆页面。就是loginurl所指定的页面。用户将在那个页面输入登陆信息。
       第三步:浏览器请求浏览登录页面,同时传递ReturnUrl的参数的值。
       第四步:服务器调转到登陆页面。
       第五步:用户输入身份验证信息,并且提交数据,其中还包含ReturnUrl的参数值。
       第六部:服务器通过读取存储介质(例如sqserver数据库)验证用户的信息。登陆页面将创建一个包含FormAuthentication ticket的cookie作为session。
       第七步:用户验证成功,服务器重新让浏览器指向ReturUrl所指定的页面。
       第八步:在重定向的同时,浏览器向default.aspx页面发送request请求,此次请求包含用户的forms authentication cookie。
       第九步:FormsAuthenticationModule类侦测到forms authentication cookie并且开始验证,验证成功后,该类将得到当前的用户信息,并传送给HttpContext对象。可以通过HttpContext对象获得当前用户的信息。
       第10步:验证成功

    Demo 

  • 相关阅读:
    VScode 修改中文字体
    missing KW_END at ')' near '<EOF>'
    SQL inner join, join, left join, right join, full outer join
    SQL字符替换函数translater, replace
    SQL COOKBOOK SQL经典实例代码 笔记第一章代码
    sqlcook sql经典实例 emp dept 创建语句
    dateutil 2.5.0 is the minimum required version python
    安装postgresql后找不到服务 postgresql service
    Postgres psql: 致命错误: 角色 "postgres" 不存在
    【西北师大-2108Java】第十六次作业成绩汇总
  • 原文地址:https://www.cnblogs.com/ant520/p/963702.html
Copyright © 2011-2022 走看看