[转]ASP.NET中的forms验证

时间:2023-01-12 09:41:04

本文转自:http://www.cnblogs.com/fengzheng126/archive/2012/04/06/2435513.html

ASP.NET的安全认证:Windows验证 (默认)、none、Passport、Forms

Froms验证

一、开启Forms验证

、打开web.config配置文件  

、找到<authentication mode="Windows"/> ,修改为

<authentication mode="Forms">       

<forms loginUrl="login.aspx" defaultUrl="default.aspx" name=".ASPX"></forms>

 </authentication>

即将login.aspx设为默认登录页,如果系统检测到用户未登录,则自动跳转到login.aspx页面;默认主页为:default.aspx;后缀名为:.ASPX;

添加<authorization>,设置访问权限

<authorization>
<deny users="?" ></deny> <!--问好代表匿名用户,*代表阻止所有用户-->
</authorization> 如果使用Forms验证,就需要用FormsAuthentication类来实现验证过程,FormsAuthentication类经常和Membership类结合使用,进行用户的登录验证。 创建身份验证 Cookie SetAuthCookie ( string userName, bool createPersistentCookie ) ,第二个参数:若要创建持久 Cookie(跨浏览器会话保存的 Cookie),则为 true;否则为 false。 string username = TextBox1.Text.Trim();
string password = TextBox2.Text.Trim();
if(登陆成功)
{
FormsAuthentication.SetAuthCookie(username,false);
Response.Redirect("default.aspx"); //登录成功的话,跳转到主页
} 返回原始请求url RedirectFromLoginPage ( string userName, bool createPersistentCookie ) 将经过身份验证的用户重定向回最初请求的 URL 或默认 URL。第二个参数:若要创建持久 Cookie(跨浏览器会话保存的 Cookie),则为 true;否则为 false。 string username = TextBox1.Text.Trim();
string password = TextBox2.Text.Trim();
if(登陆成功)
{
FormsAuthentication.RedirectFromLoginPage(username, false); //登录成功的话,跳转到原始请求页
} 删除 Forms 身份验证 SignOut () ;通常用于注销用户或用户退出登录。 login.aspx.cs中登录按钮的事件代码: protected void Button1_Click(object sender, EventArgs e)
{
string username = TextBox1.Text.Trim();
string password = TextBox2.Text.Trim(); FormsAuthentication.RedirectFromLoginPage(username, false);//自动转到原始请求页 //跳转到网站首页
//FormsAuthentication.SetAuthCookie(username,false);
//Response.Redirect("default.aspx");
} default.aspx.cs中的代码: 、label1标签显示用户名:Label1.Text = Context.User.Identity.Name;//在cookie中提取用户名 、注销登录按钮: FormsAuthentication.SignOut(); FormsAuthentication.RedirectToLoginPage();//退出后重定向到登录页,这两行是配合使用的。

[转]ASP.NET中的forms验证的更多相关文章

  1. Asp&period;net中基于Forms验证的角色验证授权

    Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验证用的最多,也最灵活. Forms 验证方式对基于用户的验证授 ...

  2. asp&period;net中使用forms验证

    1.首先在web.config中修改验证方式为 "Forms" <authentication mode="Forms"> 这里的模式有很多中,可自 ...

  3. 也谈Asp&period;net 中的身份验证

    钱李峰 的这篇博文<Asp.net中的认证与授权>已对Asp.net 中的身份验证进行了不错实践.而我这篇博文,是从初学者的角度补充了一些基础的概念,以便能有个清晰的认识. 一.配置安全身 ...

  4. ASP&period;NET中 RegularExpressValidator&lpar;正则验证&rpar;的使用

    原文:ASP.NET中 RegularExpressValidator(正则验证)的使用 ylbtech-ASP.NET-Control-Validator: RegularExpressValida ...

  5. 利用&period;net的内部机制在asp&period;net中实现身份验证

    知识点: 在ASP.NET中,任何页面都是继承于System.Web.UI.Page,他提供了Response,Request,Session,Application的操作.在使用Visual Stu ...

  6. ASP&period;NET 中的 authentication&lpar;验证&rpar;与authorization&lpar;授权&rpar;

    这两个东西很绕口,也绕脑袋. 一般来说,了解authentication(验证)的用法即可,用于自定义的用户验证. authorization(授权)主要通过计算机信息来控制. “*”:所有用户: “ ...

  7. Asp&period;net简单实现forms验证

    <configuration> <system.web> <compilation debug="true" targetFramework=&quo ...

  8. ASP&period;NET中的身份验证有那些?你当前项目采用什么方式验证请解释

    ASP.NET身份验证模式包括Windows.Forms(窗体).Passport(护照)和None(无). l  Windows身份验证—常结合应用程序自定义身份验证使用使用这种身份验证模式时,AS ...

  9. ASP&period;NET中的请求验证

    这两天做项目的时候偶然发现项目中的保存功能的时候出现这样的异常:异常详细信息: System.Web.HttpRequestValidationException: 从客户端(XXXX)中检测到有潜在 ...

随机推荐

  1. PHP常用框架

    1.Thinkphp  thinkphp是国内开发的框架,它有比较易读的手册,和大量的网上资源,所以我推荐大家首选thinkphp. 2.CodeIgniter  前一段时间我用过codeignite ...

  2. 一个js变量以及其作用域的源码示例

    今天遇到了一个问题,抽象出来的代码如下: var zoom=13; function setZoom(){ zoom=14; } function displayZoom(){ this.setZoo ...

  3. 向Dialog中添加一个新的Menu

    1.创建一个新的Menu,在资源管理视图中,右键Menu-->传入Menu 2.设计新Menu,ID为IDR_MENU1 3.在该Dialog的源文件中,找到CTest001Dlg::OnIni ...

  4. Android ADT Bundle(Eclipse with ADT) ADT R23

    ADT Bundle Platform Package Size MD5 Checksum Windows 32-bit adt-bundle-windows-x86-20140624.zip 377 ...

  5. 为ubuntu添加右键打开终端效果

    安装工具:nautilus-open-terminal sudo apt-get install nautilus-open-terminal 注销或重启

  6. 一些图像识别初创公司产品及API搜集ing&period;&period;&period;

    一些公司的产品路线可以很好地给我们启示,欢迎看客补充. 一.微软认知服务API 1.年龄.性别检测 2.物体分类.识别 3.识别名人 全新的名人识别模块可以识别20万来自全球各地涉及商界.政界.体育界 ...

  7. android的activity栈管理

    在进行BlackBerry程序开发的时候,BlackBerry提供了一个管理Screen的栈,用来从任何地方来关闭位于最上一层的Screen,使用UiApplication.getUiApplicat ...

  8. H3C交换机S5500划分VLAN

    好记性不如烂笔头! H3C交换机S5500划分VLAN       将H3C S5500换机现在需要分三网段,分别是VLAN14,VLAN15,VLAN16,交换机中默认全部口是VLAN1.   H3 ...

  9. Mac 下 Eclipse 添加 Dynamic Web Project 并配置 Tomcat

    最近拿到了一个 Dynamic Web Project,我的 Mac 上的 Eclipse 之前没有过这类型的项目,所以导入之后无法正常运行.下面是我记录的如何配置 Eclipse 使之能够运行 Dy ...

  10. 2T以上磁盘格式化

    1.安装软件 对于 Debian/Ubuntu 用户, 使用 APT-GET 命令或者 APT 命令来安装 parted #apt-get install -y parted 对于 RHEL/Cent ...