zoukankan      html  css  js  c++  java
  • Form表单验证

     <system.web>
        <compilation debug="true" targetFramework="4.0" />
    
        <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
    
    
        <!--Forms验证分两步   第一步 authentication 为认证  第二部 authorization 为授权-->
    
        <!--设置 Forms 认证方式-->
        <authentication mode="Forms">
          <forms loginUrl="Login.aspx" name="UserName" cookieless="UseCookies">
          </forms>
        </authentication>
    
        <!--拒绝所有未登录用户访问-->
        <authorization>
          <deny users="?"/>
        </authorization>
    
      </system.web>

    表单验证只需在配置文件中设置即可(如上)

    上面的代码设置了除了Login.aspx 页面外 其他所有的资源都禁止 未登录的用户访问 

    如果登陆页面里有一些图片LOGO之类的存在其他目录里就需要加上下面的设置

      <!--设置Images文件夹为所有用户可以访问(设置此步因为登陆界面有图片  就把图片文件中权限放开)-->
      <location path="Images">
        <system.web>
          <authorization>
            <allow users="*"/>
          </authorization>
        </system.web>
      </location>

    上面的设置为路径为 Images 的文件夹下的资源 允许 所有的用户访问

    这样Form验证就完成了

    这样在登陆成功的时候把用户信息写进Cookie里就OK了(如下)

       
                //给Form验证机制设置参数
                FormsAuthentication.SetAuthCookie(UserName_txt.Text, false);

    我们可以在页面的调用 Request.IsAuthenticated 查看 当前请求是否为已登录用户发起的 此属性是个Bool 值

    在页面中调用  FormsAuthentication.SignOut() 注销登陆

    在页面中调用 HttpContext.Current.User.Identity.Name   或者直接 User.Identity.Name 返回当前登陆的用户名 

  • 相关阅读:
    操作系统知识点_用户编程接口
    操作系统知识点_内存管理
    操作系统知识点_进程管理
    LintCode 二叉树的后序遍历
    LintCode 二叉树的最大深度
    LintCode 二叉树的中序遍历
    LintCode 二叉树的前序遍历
    LintCode 删除排序链表中的重复元素
    Lintcode 二分查找
    lintcode 空格替换
  • 原文地址:https://www.cnblogs.com/gouyanfeng/p/2835067.html
Copyright © 2011-2022 走看看