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

当访问默认首页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 runat="server"/>
<br>
<form method="post" runat="server">
 <asp:button Text="退出登录" runat="server"/>
</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 runat="server" Text="用户名:"/>
 &nbsp;&nbsp;&nbsp;
 <asp:Textbox runat="server"/>
 <br>
 <br>
 <asp:Label runat="server" Text="密 码:"/>
 &nbsp;&nbsp;&nbsp;
 <asp:Textbox runat="server" TextMode="password"/>
 <br>
 <asp:button runat="server" Text="登录" />
</form>
<hr>
 <br>
 <asp:Label forecolor="red" runat="server"/>
</BODY>
</HTML>

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjgjyw.html