色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

asp.net 身份驗(yàn)證(分目錄驗(yàn)證篇)

比如一個(gè)新聞系統(tǒng),通常只有在發(fā)布新聞的網(wǎng)頁才需要身份驗(yàn)證,而用戶瀏覽新聞是不需要身份驗(yàn)證的。對于這種情況,就要針對不同的網(wǎng)頁來進(jìn)行身份驗(yàn)證了。
要實(shí)現(xiàn)這種功能,也只要將《ASP.NET中的身份驗(yàn)證(最簡單篇)》稍作修改,具體操作方式如下所示:

第一步、創(chuàng)建一個(gè)子文件夾,將所有要驗(yàn)證的網(wǎng)頁都放在這個(gè)文件夾中,設(shè)置該文件夾的名字為“admin”。

第二步、修改web.config文件。
1、在<system.web>和</system.web>中找到<authentication>節(jié),將其改為“<authentication mode="Forms"><forms loginUrl="~/admin/AdminLogin.ASPx"></forms></authentication>”,其中Forms代表使用表單認(rèn)證;loginUrl用于指定登錄頁面URL,個(gè)人比較喜歡將登錄頁面也放在admin文件夾中,所以在此要指定登錄頁面URL,如果還是想使用根目錄中的login.ASPx頁面作為登錄頁面,則可以省略<forms>節(jié)。
2、在<system.web>和</system.web>中添加“<authorization><allow users="?"/></authorization>”,其中“<allow users="?"/>”代表允許所有的匿名用戶。注意此處與《ASP.NET中的身份驗(yàn)證(最簡單篇)》的區(qū)別,在《ASP.NET中的身份驗(yàn)證(最簡單篇)》中,此處使用的是“<deny users="?"/>”,用于拒絕所有匿名用戶。

第三步、在需要身份驗(yàn)證的子文件夾中添加一個(gè)web.config文件,在本例中為在“admin”文件夾中添加該文件。

第四步、修改需要身份驗(yàn)證的子文件夾中的web.config文件,在本例中為“admin”文件夾中的web.config文件。
在<system.web>和</system.web>中,添加“<authorization><deny users="?"/></authorization>”,由于在根目錄中的web.config文件中聲明了允許所有匿名用戶訪問,所以在不能允許匿名用戶訪問的子文件夾中,必須要使用“<deny users="?"/>”來拒絕匿名用戶訪問。另外,在子文件夾中的web.config文件中可以沒有<authentication>節(jié)。

第五步、在“admin”子文件夾中創(chuàng)建AdminLogin.ASPx文件。如果在第二步中沒有使用<forms>節(jié)來指定用戶登錄頁面,則在網(wǎng)站根目錄下創(chuàng)建login.ASPx文件。

第六步、在AdminLogin.ASPx文件(或login.ASPx文件)中驗(yàn)證身份,如果身份驗(yàn)證通過,使用FormsAuthentication.SetAuthCookie()為用戶創(chuàng)建一個(gè)身份驗(yàn)證的票據(jù),并將其添加到Cookie中。以后,再訪問網(wǎng)站中admin子目錄下的其他網(wǎng)頁,就不需要使用進(jìn)行身份驗(yàn)證了。單擊提交按鈕后的代碼與《ASP.NET中的身份驗(yàn)證(最簡單篇)》中的代碼類似,在此就不再贅述了。

本例在VS2005中測試通過。
本例的優(yōu)點(diǎn):過程和代碼都十分簡單,可以指定某個(gè)目錄中的網(wǎng)頁進(jìn)行身份驗(yàn)證,而不是整個(gè)網(wǎng)站的所有網(wǎng)站都進(jìn)行身份驗(yàn)證。
本例的缺點(diǎn):身份驗(yàn)證過于簡單,驗(yàn)證結(jié)果只有兩種,一種是沒有通過驗(yàn)證,因而拒絕訪問;一種是通過驗(yàn)證,可以訪問。如果想對權(quán)限進(jìn)行細(xì)分,比較說管理員A擁有添加權(quán)限,而管理員B只擁有查看權(quán)限,這種功能就無法實(shí)現(xiàn)了。

AspNet技術(shù)asp.net 身份驗(yàn)證(分目錄驗(yàn)證篇),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 济阳县| 平利县| 长岛县| 清水河县| 兴安盟| 襄樊市| 年辖:市辖区| 自贡市| 名山县| 梧州市| 青田县| 江口县| 晋宁县| 屏东市| 临邑县| 叙永县| 白城市| 武平县| 新疆| 澄城县| 永兴县| 岳阳县| 洞口县| 隆林| 哈密市| 宝坻区| 堆龙德庆县| 中江县| 洪湖市| 南投市| 北碚区| 虎林市| 赞皇县| 江北区| 同江市| 汉川市| 武胜县| 南陵县| 土默特左旗| 长兴县| 霍州市|