主頁 > 知識庫 > asp.net 身份驗證機(jī)制實例代碼

asp.net 身份驗證機(jī)制實例代碼

熱門標(biāo)簽:山西防封卡電銷卡套餐 上海楊浦怎么申請申請400電話 銅川小型外呼系統(tǒng)運(yùn)營商 廈門商鋪地圖標(biāo)注 云南外呼電銷機(jī)器人系統(tǒng) 地圖標(biāo)注多個行程 陜西人工外呼系統(tǒng)哪家好 海外地圖標(biāo)注門市標(biāo) 浙江外呼系統(tǒng)怎么安裝
ASP.NET提供了3種認(rèn)證方式:windows身份驗證、Forms驗證和Passport驗證。
windows身份驗證: IIS根據(jù)應(yīng)用程序的設(shè)置執(zhí)行身份驗證。要使用這種驗證方式,在IIS中必須禁用匿名訪問。
Forms驗證:用Cookie來保存用戶憑證,并將 未經(jīng)身份驗證的用戶重定向到自定義的登錄頁。
Passport驗證:通過Microsoft的集中身份驗證服務(wù)執(zhí)行的,他為成員站點(diǎn)提供單獨(dú)登錄和核心配置文件服務(wù)。

關(guān)于這三種驗證方式的配置,推薦一篇文章:https://www.jb51.net/article/30510.htm

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

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

1.web.config配置文件
復(fù)制代碼 代碼如下:

!--配置Forms身份認(rèn)證 不允許匿名用戶訪問,否則跳轉(zhuǎn)到/Manager/login.aspx 頁面 -->
authentication mode="Forms">
forms name="myTeacher" loginUrl="~/Manager/login.aspx" protection="All" path="/" 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身份驗證機(jī)制
-->
!--允許所有用戶訪問Script文件夾-->
location path="Script">
system.web>
authorization>
allow users="*" />
/authorization>
/system.web>
/location>


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

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

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


  當(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ù) 退出登錄
您可能感興趣的文章:
  • MVC使用Spring.Net應(yīng)用IOC(依賴倒置)學(xué)習(xí)筆記3
  • Spring學(xué)習(xí)筆記1之IOC詳解盡量使用注解以及java代碼
  • 深入理解Java的Spring框架中的IOC容器
  • 淺析Java的Spring框架中IOC容器容器的應(yīng)用
  • Spring MVC 中 短信驗證碼功能的實現(xiàn)方法
  • Spring框架生成圖片驗證碼實例
  • Spring學(xué)習(xí)筆記2之表單數(shù)據(jù)驗證、文件上傳實例代碼
  • php自動注冊登錄驗證機(jī)制實現(xiàn)代碼
  • js 第二代身份證號碼的驗證機(jī)制代碼
  • 利用Spring IOC技術(shù)實現(xiàn)用戶登錄驗證機(jī)制

標(biāo)簽:孝感 信陽 西雙版納 萊蕪 朔州 常州 自貢 許昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《asp.net 身份驗證機(jī)制實例代碼》,本文關(guān)鍵詞  asp.net,身份,驗證,機(jī)制,實例,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《asp.net 身份驗證機(jī)制實例代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于asp.net 身份驗證機(jī)制實例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章