• forms表单验证


            在ASP.NET应用程序中,有四种验证方式:Windows验证、表单验证、Passpord验证、自定义验证。

            最近在看表单验证,在这里给大家分享下我的经验。

            要实现Form验证很简单。

            第一步在web.config文件中的<system.web>节点下添加

          <authentication mode="Forms">
            <forms name="formname" path="/" loginUrl=""  timeout=“”/>
          </authentication>

           这样就告诉了应用程序用表单验证。

            验证名:formname(Request.IsAuthenticated的值就是根据cookies中是否存在名为formname的cookie来判断是否返回true或者false

           存放路径:根目录(浏览器不同cookie文件存放的具体路径也不同)。

            登录路由:通过调用FormsAuthentication.RedirectToLoginPage()可以获得loginUrl的值。

            过期时间:默认是20分钟。

            当然这里其他一些参数就不详细说明了,可以参考msdn。

            第二步创建并保存cookie。在你的登录界面中添加HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieValue)cookieValue可以自己定义也可以调用FormsAuthenticationTicket类封装自己想要的一些数据,一般都经过加密。例如它的重载构造函数之一FormsAuthenticationTicket(int version, string name, DateTime issueDate, DateTime expiration, bool isPersistent, string userData, string cookiePath)name定义了HttpContext.User.Identity.Name;UserData可以定义我们自己的一些数据。然后保存把创建的cookie值保存起来来通过调用代码Response.Cookies.Add(cookie)。这样你的cookie值就能在客户端保存起来。

            第三步创建要验证的页面,在页面中可以通过调用Request.IsAuthenticated的值来判断当前Requset是否已经验证。基本思路就是判断是否有名为表单名formname的cookie值。Request.IsAuthenticated其实是调用了HttpContext.User.Identity.IsAuthenticated的值。。如果Request.IsAuthenticated为false,就可以调用FormsAuthentication.RedirectToLoginPage();Response.End();来实现页面跳转。当我们访问一个需要验证的页面,就会跳转到登录界面,登录成功后,页面自动跳转到刚才访问的页面。

            以上只是简单的讲了下使用方法。在项目中具体应用,因人而异。

            本人.net菜鸟,好久没写博客,望大家多多包涵。

            以后每周坚持写一篇。

           

  • 相关阅读:
    浅谈SQL优化入门:1、SQL查询语句的执行顺序
    RabbitMQ 第三课 Exchange交换机详解
    RabbitMQ 第二课 快速入门
    RabbitMQ 第一课 RabbitMQ基本概念
    別人的JVM博客总结
    MySQL面试题 数据库MySQL经典面试题之SQL语句
    Swagger介绍及使用
    hcjk_SQL_FinReport_ismealFlag_Version
    hcjk_SQL 退费干掉,组套全展开,但0元被删掉了,退费的打印待沟通
    hcjk_fr 查询SQL,支持组套
  • 原文地址:https://www.cnblogs.com/7579/p/3087805.html
Copyright © 2020-2023  润新知