一个简单的ASP.NET Forms 身份认证的实例方法

 更新时间:2013年07月23日 10:19:04   作者:  
当访问默认首页default.aspx时,会自动跳转到login.aspx页面上请求登录,随便输入用户名和密码,点击“登录”按钮,会回到首页,并显示当前登录的用户名。
Web.config
复制代码 代码如下:

<configuration>
 <system.web>
  <compilation debug="true"/>
  <authentication mode="Forms">
   <forms loginUrl="login.aspx" name = ".ASPXFORMSAUTH" />
  </authentication>
  <authorization>
   <deny users="?"/>
  </authorization>
 </system.web>
</configuration>

default.aspx
复制代码 代码如下:

<HTML>
<HEAD>
<TITLE>首页</TITLE>
<script language="VB" runat="server">
 Sub Page_Load(Sender As Object, e As EventArgs)
  Message.Text = String.Format("你好,{0}", Context.User.Identity.Name)
 End Sub
 sub btnSignout_Click(Sender as Object, E as EventArgs)
  FormsAuthentication.SignOut()
  Response.Redirect("login.aspx")
 end sub
</script>
</HEAD>
<BODY>
<asp:label id="Message" runat="server"/>
<br>
<form method="post" runat="server">
 <asp:button id="btnSignout" Text="退出登录" runat="server" OnClick="btnSignout_Click"/>
</form>
</BODY>
</HTML>

login.aspx
复制代码 代码如下:

<HEAD>
<TITLE>首页</TITLE>
<script lanugage="c#" runat="server">
 private void Page_Load(object sender, EventArgs e)
 {
  if (Request.IsAuthenticated)
    Response.Redirect("default.aspx");
 }
 void btnLogin_Click(Object sender, EventArgs e)
 {
  if (txtUsername.Text != null && txtUsername.Text != String.Empty && txtPassword.Text != null && txtPassword.Text != String.Empty)
   FormsAuthentication.RedirectFromLoginPage(txtUsername.Text, true);
  else
   lblError.Text = "错误的用户名/密码";
 }
</script>
</HEAD>
<BODY>
<form method="post" runat="server">
 <asp:Label id="lblUsername" runat="server" Text="用户名:"/>
 &nbsp;&nbsp;&nbsp;
 <asp:Textbox id="txtUsername" runat="server"/>
 <br>
 <br>
 <asp:Label id="lblPassword" runat="server" Text="密 码:"/>
 &nbsp;&nbsp;&nbsp;
 <asp:Textbox id="txtPassword" runat="server" TextMode="password"/>
 <br>
 <asp:button id="btnLogin" runat="server" Text="登录" OnClick="btnLogin_Click" />
</form>
<hr>
 <br>
 <asp:Label id="lblError" forecolor="red" runat="server"/>
</BODY>
</HTML>

相关文章

  • 解决Win10无法安装.Net Framework 3.5提示错误代码0x800F081F

    解决Win10无法安装.Net Framework 3.5提示错误代码0x800F081F

    这篇文章主要介绍了Win10无法安装.Net Framework 3.5提示错误代码0x800F081F的完美解决方法,需要的朋友可以参考下
    2017-12-12
  • ASP.NET MVC下拉框联动实例解析

    ASP.NET MVC下拉框联动实例解析

    这篇文章主要为大家详细介绍了ASP.NET MVC下拉框联动实现方法,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • 详解.NET Core 3.0 里新的JSON API

    详解.NET Core 3.0 里新的JSON API

    这篇文章主要介绍了详解.NET Core 3.0 里新的JSON API,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • .NET 开源配置组件 AgileConfig的使用简介

    .NET 开源配置组件 AgileConfig的使用简介

    这篇文章主要介绍了.NET 开源配置组件 AgileConfig的使用简介,帮助大家更好的理解和学习使用.net技术,感兴趣的朋友可以了解下
    2021-05-05
  • asp.net多文件上传实例讲解

    asp.net多文件上传实例讲解

    这篇文章主要为大家详细介绍了asp.net多文件上传,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • 基于.NET的FluentValidation数据验证实现

    基于.NET的FluentValidation数据验证实现

    这篇文章主要介绍了基于.NET的FluentValidation数据验证实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • asp.net 在客户端显示服务器端任务处理进度条的探讨

    asp.net 在客户端显示服务器端任务处理进度条的探讨

    由于 HTTP 协议本身的无状态性,B/S结构的程序无法像C/S程序那样,实时显示程序处理的进度。搜索一下网上,一般都是采用静态变量保存程序执行进度的方法实现,但是,这种方法是完全错误的,在并发的情况下,多个用户访问一个程序,会造成混乱。
    2009-09-09
  • .Net6.0+Vue3实现数据简易导入功能全过程

    .Net6.0+Vue3实现数据简易导入功能全过程

    最近在用VUE做一个数据导入的功能,下面这篇文章主要给大家介绍了关于使用.Net6.0+Vue3实现数据简易导入功能的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • Asp.NET Core 如何调用WebService的方法

    Asp.NET Core 如何调用WebService的方法

    这篇文章主要介绍了Asp.NET Core 如何调用WebService的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Silverlightbutton图片切换样式实例代码

    Silverlightbutton图片切换样式实例代码

    这篇文章介绍了Silverlightbutton图片切换样式实例代码,有需要的朋友可以参考一下
    2013-11-11

最新评论