一个简单的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 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>


你可能感兴趣的:(asp.net)