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

首頁 > 編程 > .NET > 正文

asp.net 身份驗證機制實例代碼

2024-07-10 13:23:55
字體:
供稿:網(wǎng)友
ASP.NET提供了3種認證方式:windows身份驗證、Forms驗證和Passport驗證。
windows身份驗證: IIS根據(jù)應(yīng)用程序的設(shè)置執(zhí)行身份驗證。要使用這種驗證方式,在IIS中必須禁用匿名訪問。
Forms驗證:用Cookie來保存用戶憑證,并將 未經(jīng)身份驗證的用戶重定向到自定義的登錄頁。
Passport驗證:通過Microsoft的集中身份驗證服務(wù)執(zhí)行的,他為成員站點提供單獨登錄和核心配置文件服務(wù)。

關(guān)于這三種驗證方式的配置,推薦一篇文章:

我這里詳解Forms驗證方式,在ASP.NET項目中的實際應(yīng)用與深度理解。

對于ASP.NET驗證機制在項目開發(fā)中運用,會使項目非常方便快捷的實現(xiàn)頁面的訪問權(quán)限問題,而且省去了一些沒必要的安全問題。
對于ASP.NET提供的驗證機制,要深度的理解后才能靈活的運用。對于整個項目的訪問權(quán)限,有時候我們需要對部分頁面的訪問權(quán)限進行限制,又不影響其他公共頁面的訪問。舉個實際項目的例子。
案例:有一個ASP.NET的項目,對整個項目訪問限制,不允許匿名用戶訪問,登錄頁面除外。
  問題是,登錄頁面(假設(shè)是:Manager目錄下的Login.aspx文件)中應(yīng)用的Script的的一個文件(假設(shè)這個文件是:Script/jquery-1.7.1.min.js)

1.web.config配置文件

復(fù)制代碼 代碼如下:


<!--配置Forms身份認證 不允許匿名用戶訪問,否則跳轉(zhuǎn)到/Manager/login.aspx 頁面 -->
<authentication mode="Forms">
<forms loginUrl="~/Manager/login.aspx" protection="All" path="http://m.survivalescaperooms.com/" timeout="60"></forms>
</authentication>
<authorization>
<deny users="?"/>
</authorization>


現(xiàn)在我們可以理解為:當(dāng)用戶打開程序時,會自動轉(zhuǎn)到Manager/login.aspx頁面,但是這個頁面引用的jquery-1.7.1.min.js文件是不可用的。因為,限制了所有的匿名用戶只能訪問Login.aspx頁面,只有當(dāng)注冊票據(jù)之后其它的頁面或文件才能正常訪問。所以當(dāng)匿名用戶需要有權(quán)限訪問jquery-1.7.1.min.js文件,就需要設(shè)置某個文件或者文件的訪問權(quán)限為所有用戶。

復(fù)制代碼 代碼如下:


<!--允許所有用戶訪問Script文件夾-->
<location path="Script">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>


path可以只想某個具體的文件,比如"Script/Script/jquery-1.7.1.min.js",這里設(shè)置“Script”文件夾表示,允許匿名用戶訪問“Script”文件夾下面的所以文件

復(fù)制代碼 代碼如下:


<!--
定義 ASP.NET身份驗證機制
-->
<!--允許所有用戶訪問Script文件夾-->
<location path="Script">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>


<system.web>
<customErrors mode="Off" defaultRedirect="../error.aspx"/>

<!--配置Forms身份認證 不允許匿名用戶訪問,否則跳轉(zhuǎn)到/Manager/login.aspx 頁面 -->
<authentication mode="Forms">
<forms loginUrl="~/Manager/login.aspx" protection="All" path="http://m.survivalescaperooms.com/" timeout="60"></forms>
</authentication>
<authorization>
<deny users="?"/>
</authorization>


2.登錄注冊票據(jù)

asp.net 身份驗證機制實例代碼



  當(dāng)?shù)卿涰撁娴卿浱峤徊⒌卿洺晒螅云睋?jù),當(dāng)注冊票據(jù)之后,相當(dāng)于當(dāng)前用戶的身份已經(jīng)不是匿名用戶,沒有了訪問權(quán)限的限制。FormsAuthentication的命名空間是:using System.Web.Security;

FormsAuthentication.RedirectFromLoginPage(UserID, false); //頁面注冊 關(guān)鍵 UsersID表示登錄ID
3.撕毀票據(jù)(退出系統(tǒng))

FormsAuthentication.SignOut(); //撕毀票據(jù) 退出登錄
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 陕西省| 福贡县| 新郑市| 衡山县| 合山市| 宣武区| 丰县| 枝江市| 昭苏县| 扬中市| 贵阳市| 高阳县| 镇赉县| 湖州市| 阿荣旗| 准格尔旗| 安岳县| 六安市| 务川| 北碚区| 垣曲县| 罗甸县| 陈巴尔虎旗| 辉南县| 离岛区| 化州市| 剑阁县| 吴桥县| 蒙自县| 天祝| 固始县| 灌阳县| 万荣县| 通道| 榆中县| 团风县| 陵川县| 璧山县| 息烽县| 周宁县| 延川县|