999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

ASP.NET中的Forms身份驗證的研究

2012-08-01 08:46:46義艷剛
武漢船舶職業技術學院學報 2012年4期
關鍵詞:頁面數據庫用戶

義艷剛

(武漢船舶職業技術學院實訓中心,湖北武漢 430050)

在Visual Studio.NET中開發Web應用程序項目時,在默認情況下,任何人都可以訪問這些Web頁面。如果想拒絕某些不受歡迎的人訪問頁面,這就需要對訪問頁面的用戶進行“身份驗證”。

ASP.NET中支持三種類型的身份驗證:Windows身份驗證,它結合Internet信息服務(IIS)身份驗證,只允許某些 Windows賬戶訪問頁面;Passport身份驗證,它是由 Microsoft提供的集中身份驗證服務,用于為其成員站點提供單一登錄和核心配置服務;Forms身份驗證,它是使用自定義表單來實現身份驗證,這是最流行的身份驗證方法。

當用戶訪問使用Forms身份驗證的頁面時,他們會被重新定向到一個登錄頁面。在這個頁面,用戶可以提供用戶名和密碼,然后檢查其身份驗證信息是否有效,并據此授權或拒絕訪問頁面。本文主要對ASP.NET的Forms身份驗證進行討論。

1 使用Web.config存儲用戶的Fo rms身份驗證

Web.config文件是一個XML文本文件,它用來儲存ASP.NET Web應用程序的配置信息。在Visual Studio.NET中新建一個Web應用程序后,默認情況下會在站點的根目錄下自動創建一個默認的Web.config文件,包括默認的配置設置,所有的子目錄都繼承它的配置設置。通過對Web.config文件進行重寫或修改,可以設置ASP.NET Web應用程序的Forms身份驗證方式,設置步驟如下:

(1)在項目解決方案中打開 Web.config文件,編輯<authentication>元素,設置應用程序的身份驗證方式為“Forms”,并為應用程序提供一組有效的用戶,如下所示。

(2)在 Web.config文件中,從<authorization>元素中刪除<allow users=”*”/>行。因為這一行向任何人授予訪問權限,所以需要刪除。

(3)在 Web.config文件的<authorization>元素中,添加<deny users=”?”/>行,拒絕所有未通過身份驗證的用戶。

(4)創建一個名為“login.aspx”的頁面。在默認情況下,所有未通過身份驗證的用戶都會被重新定向到這個頁面。在該頁面中添加兩個TextBox控件(txt_Username和txt_password),以便用戶提供身份驗證信息;添加一個CheckBox控件(chkPersist),供用戶選擇是否由計算機保存身份驗證信息,方便下一次自動登錄;添加一個Button控件(bt_login)作為登錄按鈕,以便用戶登錄網站進行身份驗證。

(5)給login.aspx頁面的登錄按鈕添加如下代碼:If System.Web.Security.FormsAuthentication.Authenticate(_txt_Username.Text,txt_password.Text)=True then'驗證用戶身份System.Web.Security.FormsAuthentication.RedirectFormLoginPage(_txt_Username.Text,chk-Persist.Checked)'驗證通過,重新定向到最初請求的頁面ElseRespone.Write(“用戶名或密碼錯誤!”)'驗證沒通過,顯示錯誤信息End If至此,使用Web.config設置ASP.NET Forms身份驗證就完成了。現在,當用戶訪問應用程序中的頁面時,如果未通過身份驗證,他就會被重新定向到login.aspx頁面。在該頁面上,用戶提供用戶名和密碼后,.Authenticate方法會嘗試將這些身份驗證信息與Web.config文件中定義的用戶信息進行比較。如果用戶提供的驗證信息是無效的,就會顯示一個錯誤消息;如果該信息是有效的,就運行.RedirectFormLoginPage方法將用戶重新定向到最初請求的頁面。

2 使用數據庫存儲用戶的Forms身份驗證

在開發Web應用程序項目時,如果只有幾個核心用戶組訪問站點,可以很容易地將用戶身份信息存儲在 Web.config文件中;否則,使用Web.config設置ASP.NET Forms身份驗證就不是很有效了。而且,用戶密碼存儲在純文本的XML中,開發小組中的任何人都可以提取這些信息,將影響到用戶身份信息的安全。

此時,將用戶身份信息存儲在數據庫中,使用數據庫中的信息來驗證用戶的身份就比較可靠了,具體步驟如下:

(1)建立一個數據庫(mydatabase.dbf),在數據庫中建立一個用戶身份信息表(表名:tab_users,包含列username和password)。

(2)編輯 Web.config文件,把<authentication>元素修改為<authentication mode=”Forms”/>;從<authorization>元素中刪除<allow users=”*”/>行;添加<deny users=”?”/>行。

(3)創建login.aspx頁面,如前所述。

(4)給login.aspx頁面的登錄按鈕添加代碼,這里不使用.Authentication方法,使用ADO.NET代碼查詢用戶身份信息表,并檢查所提供信息的有效性。如果信息有效,就運行.RedirectFormLoginPage方法將用戶重新定向到最初請求的頁面。代碼如下:

3 只驗證站點的部分頁面的Forms身份驗證

在開發Web應用程序項目時,有些情況下,站點的部分頁面需要向任何人開放,而另一部分頁面需要用戶身份驗證,只有已授權用戶才能訪問。當然,這可以通過保存一些Session會話變量和(或者)使用cookie來實現,但還有一種更簡單的解決方案,它仍然允許使用ASP.NET Forms身份驗證,但只用于站點的部分頁面,具體的步驟如下:

(1)修改Web.config文件,以使用Forms身份驗證。如前所述,如果使用Web.config文件存儲用戶,則編輯<authentication>元素,設置應用程序的身份驗證方式為“Forms”,并為應用程序提供一組有效的用戶;如果使用數據庫存儲用戶,則把<authentication>元素修改為<authentication mode=”Forms”/>。

(2)因為部分頁面需要向任何人開放,所以不需要從<authorization>元素中刪除<allow users=”*”/>行,也不需要添加<deny users=”?”/>行。

(3)在 Web.config文件中,在<configuration>元素的后面添加如下代碼:

代碼中,用要保護的頁面替代checkpage.aspx,以確保ASP.NET拒絕任何未通過身份驗證的用戶訪問這個頁面。如果有多個要保護的頁面,則添加多個<location>塊,在路徑path參數中也可以包含文件夾和文件名。

創建login.aspx頁面,如前所述。

給login.aspx頁面的登錄按鈕添加相應的身份驗證代碼。

現在,創建了一個這樣的 Web應用程序,它使用Forms身份驗證,在默認情況下允許任何用戶訪問,但是在Web.config文件中添加了一個<location>子句,要求所有試圖訪問checkpage.aspx頁面的用戶都必須通過身份驗證,當他們訪問該頁面時就會被重新定向到login.aspx頁面。

如前所述,本文介紹了使用Web.config存儲用戶、使用數據庫存儲用戶、只驗證站點的部分頁面等三種ASP.NET Forms身份驗證,詳細介紹了這三種Forms身份驗證的設置步驟和實現代碼。

猜你喜歡
頁面數據庫用戶
大狗熊在睡覺
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 日本a级免费| 熟妇丰满人妻av无码区| 999精品视频在线| 天天综合色网| 91久久国产综合精品女同我| 免费观看三级毛片| 中文字幕亚洲综久久2021| 亚洲黄色成人| 欧美亚洲网| 成人欧美在线观看| 风韵丰满熟妇啪啪区老熟熟女| 欧美在线视频不卡第一页| 幺女国产一级毛片| 亚洲a级毛片| 久久青草热| 福利国产在线| 五月天综合婷婷| 欧美成人看片一区二区三区| 国产91丝袜在线播放动漫 | 乱色熟女综合一区二区| 99久久亚洲精品影院| 婷婷中文在线| 伊人精品视频免费在线| 久久国产成人精品国产成人亚洲| 欧美日韩一区二区在线播放| 亚洲欧美极品| 亚洲欧美一区在线| 77777亚洲午夜久久多人| 91精品国产无线乱码在线| 日本成人一区| 久精品色妇丰满人妻| 久久国产精品电影| 久久精品日日躁夜夜躁欧美| 国产青青操| 色婷婷在线影院| 亚洲毛片网站| 日韩一级二级三级| 欧美成在线视频| 亚洲午夜综合网| aⅴ免费在线观看| 国产福利影院在线观看| 无码AV高清毛片中国一级毛片| 国产精品9| 992Tv视频国产精品| 国产精品部在线观看| 69综合网| 丰满人妻久久中文字幕| 小蝌蚪亚洲精品国产| 色偷偷综合网| 狠狠做深爱婷婷综合一区| 亚洲h视频在线| 亚洲免费福利视频| 久久a级片| 国产精品成人一区二区| 成人亚洲视频| av无码一区二区三区在线| 国产精选小视频在线观看| 精品国产免费观看一区| 好紧好深好大乳无码中文字幕| 日韩一区精品视频一区二区| 国产在线观看第二页| 国产高清不卡| 日韩欧美中文字幕在线韩免费| 无遮挡国产高潮视频免费观看| 久久国产乱子伦视频无卡顿| 欧美综合在线观看| 国产性爱网站| 国产自在自线午夜精品视频| 国产白浆在线观看| 欧洲av毛片| 9966国产精品视频| 国产理论精品| 多人乱p欧美在线观看| 四虎国产精品永久一区| 欧美另类视频一区二区三区| 国产成人艳妇AA视频在线| 天天摸天天操免费播放小视频| 欧美成人日韩| 熟妇无码人妻| 狠狠综合久久| 这里只有精品在线| 亚洲AⅤ综合在线欧美一区|