日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET 完成基于表单的身份验证

發布時間:2025/4/14 asp.net 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET 完成基于表单的身份验证 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


實現:驗證用戶身份成功,并登陸后臺Admin文件夾里的index.aspx后臺管理首頁面,否則禁止匿名用戶訪問項目中的Admin文件夾里的任何一個文件。


?

步驟一:

?在根目錄下的web.config中加入:

<system.web>?

<authentication mode="Forms">
?? ??? ??? ?<forms loginUrl="Login.aspx" defaultUrl="Admin/Index.aspx" name=".ASPXFORMSAUTH" timeout="30">
?? ??? ??? ?</forms>
</authentication>?

</system.web>?

?loginUrl:用戶沒有登錄,跳轉到的登錄頁面?? 默認值為 login.aspx

?defaultUrl:正確登錄之后,在后臺代碼沒有指向指定頁的時候,系統將自動跳轉的頁面

??????? name:指定要用于身份驗證的 HTTP Cookie。如果正在一臺服務器上運行多個應用程序并且每個應用程序都需要唯一的 Cookie,則必須在每個應用程序的  Web.config 文件中配置 Cookie 名稱。? 默認值為 ".ASPXAUTH"。

  timeout:指定 Cookie 過期前逝去的時間(以整數分鐘為單位), ?默認值為 "30"

?

步驟二:

步驟二可以由倆種方法:

1)、在Admin文件夾下新建一個web.config文件,并加入以下代碼

<system.web>
?? ??? ?<!--拒絕匿名用戶訪問此目錄下的任何文件-->
?? ??? ?<authorization>
?? ??? ??? ?<deny users="?"/>
?? ??? ?</authorization>?? ????
</system.web>?

?deny users="?":表示禁止匿名用戶訪問Admin目錄下的任何文件

?到目前為止,只要你訪問Admin下的任何文件,都會自動跳轉到Login.aspx登陸頁面了,要求你先登錄,否則別想看到頁面。

2)、在根目錄下的web.config文件中的<system.web> 的結束標記</system.web> 后加入一下代碼:

? <location path="Admin">
??? ??? <system.web>
??? ??? ??? <authorization>
??? ??? ??? ??? <deny users="?"/>
??? ??? ??? </authorization>
??? ??? </system.web>
?? </location>

path:表示設置所要針對的路徑/目錄

deny users="?":表示禁止匿名用戶訪問Admin目錄下的任何文件

?

步驟三:

在根目錄下,創建Login.aspx登陸頁面(可不是在Admin目錄下),加兩個textbox控件一個botton控件,分別是用戶名密碼,和登陸按鈕

雙擊登陸按鈕,在其登陸方法里寫上:

protected void btn_Login_Click(object sender, EventArgs e)
{
??????? if (TextBox1.Text == "admin" && TextBox2.Text == "fenghua17173")
??????? {
??????????? //“通知”表單驗證,該用戶名已經通過身份驗證
??????????? FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, true);
??????? }
??????? else
??????? {
??????????? Response.Write("<script>alert('賬號或密碼有誤,登錄失敗!');</script>");
??????? }
}

這時你在login.aspx頁面里填上賬號密碼,系統就會根據根你在根目錄下web.config中配置的?defaultUrl地址路徑跳轉過去,也就是Admin/Index.aspx頁面。

現在Admin目錄下的所有頁面,均已通過身份驗證,得到了可訪問的票據。

?

最后一點:

有了登錄,當然別忘了需要注銷,這個更簡單:

在Admin目錄下的任何一個頁面中,加一個注銷button按鈕,并在其方法下寫入:

?

//退出系統,注銷用戶
protected void btn_Logout_Click(object sender, EventArgs e)
{
??????? //刪除用戶票據
??????? FormsAuthentication.SignOut();

?

??????? //重新定向到登陸頁面
??????? FormsAuthentication.RedirectToLoginPage();

}

?

好了,你已經知道如何配置web.Config中的authentication,來完成基于表單的身份驗證了。

?

本文參考:http://www.fengfly.com/plus/view-174785-1.html

?

思考:

網站結構如下
??? /index.aspx
??? /userLogin.aspx
??? /adminLogin.aspx
??? /user/*.aspx
??? /admin/*.aspx

需求:在未登錄的情況下:

   ?? 訪問/user/路徑下的頁面的請求轉向到/userLogin.aspx;
????????????? 訪問/admin/路徑下的頁面的請求被轉向到/adminLogin.aspx;

?

?

另附廣告:女朋友的淘寶網店,為她做宣傳,希望大家別介意,http://iyseek.taobao.com? 歡迎大家逛逛,嘿嘿!

如有需要幫助,請聯系MSN:zheng331773812@hotmail.com(上班時在線)?? QQ:331773812

歡迎大家共同交流!

轉載于:https://www.cnblogs.com/jsonzheng/archive/2010/08/30/1812715.html

總結

以上是生活随笔為你收集整理的ASP.NET 完成基于表单的身份验证的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。