国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET實(shí)現(xiàn)匿名訪問控制

2024-07-10 13:10:34
字體:
供稿:網(wǎng)友


  通過學(xué)習(xí)我掌握了兩種控制方法,實(shí)現(xiàn)了對(duì)于網(wǎng)站的匿名訪問控制,一個(gè)是通過iis實(shí)現(xiàn),另一個(gè)是通過asp.net實(shí)現(xiàn)。個(gè)人感覺兩種基本上可以實(shí)現(xiàn)的功能沒有什么差別,不過通過asp.net實(shí)現(xiàn)的更易于管理和維護(hù)。

  對(duì)于通過iis的實(shí)現(xiàn)都比較清楚,可以對(duì)文件夾或單個(gè)文件(頁面)設(shè)置訪問權(quán)限,iis提供了“目錄安全性”和“文件安全性”的設(shè)置方法。并可以通過直接設(shè)置不同訪問人的權(quán)限。其中就提供了匿名訪問的控制方法,這里不再細(xì)說。

  asp.net控制方法:

  首先介紹例子實(shí)現(xiàn)的效果,一個(gè)網(wǎng)站登陸以后可以將用戶信息保存在一個(gè)cookie中,并標(biāo)識(shí)用戶是通過身份驗(yàn)證的,在訪問其他頁面的時(shí)候直接對(duì)用戶的身份是否通過驗(yàn)證進(jìn)行判斷,如果通過即可繼續(xù)訪問頁面,如果是一個(gè)未通過驗(yàn)證的匿名訪問用戶(即未登錄用戶)則將跳轉(zhuǎn)到登陸頁面提示用戶登錄。設(shè)置其中一個(gè)用戶注冊頁面為可以匿名訪問,因?yàn)闃I(yè)務(wù)邏輯上只有允許注冊才能登陸。

  在登陸頁面還是先對(duì)用戶的用戶名和密碼進(jìn)行驗(yàn)證,至于使用與數(shù)據(jù)庫比對(duì)的方法還是到ad中驗(yàn)證等都可以,然后通過以下的方法將當(dāng)前用戶在cookie中標(biāo)識(shí)為通過驗(yàn)證的用戶,并跳轉(zhuǎn)到用戶跳轉(zhuǎn)到登陸頁之前請求的頁面。

formsauthentication.redirectfromloginpage(username,createpersistentcookie);

  在用戶直接請求的頁面上我們使用如下的方法來驗(yàn)證用戶。

context.user.identity.isauthenticated

  context:獲取與該頁關(guān)聯(lián)的 system.web.httpcontext 對(duì)象

  user:為當(dāng)前 http 請求獲取或設(shè)置安全信息

  identity:獲取當(dāng)前用戶的標(biāo)識(shí)

  isauthenticated:獲取一個(gè)bool值,該值指示是否驗(yàn)證了用戶

  然后我們在web.config中進(jìn)行安全設(shè)置。

    <authentication mode="forms">
        <forms loginurl="login.aspx"></forms>
</authentication>

  "forms" 您為用戶提供一個(gè)輸入憑據(jù)的自定義窗體(web 頁),然后在您的應(yīng)用程序中驗(yàn)證他們的身份。用戶憑據(jù)標(biāo)記存儲(chǔ)在 cookie 中。

    <authorization>
        <deny users="?" />
    </authorization>

  deny表示禁止,users="?"表示匿名用戶

  <location path="newuser.aspx">
    <system.web>
        <authorization>
            <allow users="*" />
        </authorization>
    </system.web>
  </location>

  表示新用戶注冊頁面newuser.aspx,可以允許任何人訪問。這樣就實(shí)現(xiàn)了對(duì)于匿名用戶的訪問控制。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 清河县| 无极县| 德江县| 邵阳县| 枣强县| 大连市| 江口县| 神池县| 宁安市| 章丘市| 武鸣县| 昭通市| 荥经县| 盐津县| 远安县| 连城县| 平阳县| 布尔津县| 苗栗县| 双牌县| 峡江县| 山丹县| 阿勒泰市| 白水县| 西丰县| 莱西市| 义马市| 阳江市| 兰溪市| 乌拉特后旗| 错那县| 雷州市| 荣昌县| 永新县| 托克托县| 沽源县| 无为县| 浠水县| 会理县| 剑河县| 岗巴县|