一個簡單的ASP.NET Forms 身份認證的執行個體方法

來源:互聯網
上載者:User
當訪問預設首頁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="使用者名稱:"/>
    
 <asp:Textbox id="txtUsername" runat="server"/>
 <br>
 <br>
 <asp:Label id="lblPassword" runat="server" Text="密 碼:"/>
    
 <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>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.