溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASP.NET身份驗(yàn)證服務(wù)怎么實(shí)現(xiàn)

發(fā)布時(shí)間:2021-12-06 11:44:08 來(lái)源:億速云 閱讀:119 作者:iii 欄目:編程語(yǔ)言

本篇內(nèi)容介紹了“ASP.NET身份驗(yàn)證服務(wù)怎么實(shí)現(xiàn)”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

身份驗(yàn)證和授權(quán)

ASP.NET 與 IIS 一起使用以支持身份驗(yàn)證,并使用基本、簡(jiǎn)要和 Windows 身份驗(yàn)證。ASP.NET 支持 Microsoft Passport 身份驗(yàn)證服務(wù),該服務(wù)提供單一登錄服務(wù)和對(duì)用戶配置文件服務(wù)的支持。ASP.NET 還為要使用基于窗體的身份驗(yàn)證的應(yīng)用程序提供可靠的服務(wù)。基于窗體的身份驗(yàn)證使用 Cookie 鑒別用戶的身份,并允許應(yīng)用程序執(zhí)行自己的憑據(jù)驗(yàn)證。

認(rèn)識(shí)到 ASP.NET身份驗(yàn)證服務(wù)取決于 IIS 提供的身份驗(yàn)證服務(wù)很重要。例如,若要在 IIS 應(yīng)用程序中使用基本身份驗(yàn)證,必須使用 Internet 服務(wù)管理器工具為應(yīng)用程序配置基本身份驗(yàn)證的使用。

ASP.NET 提供兩類授權(quán)服務(wù):

根據(jù) ACL 或資源權(quán)限進(jìn)行檢查,以確定已經(jīng)過(guò)驗(yàn)證的用戶帳戶能否訪問(wèn)資源。

URL 授權(quán),它授權(quán) Web 空間各部分的標(biāo)識(shí)。

為闡釋差異,請(qǐng)考慮這樣一個(gè)方案,在該方案中應(yīng)用程序被配置為允許使用 IUSR_MYMACHINE 帳戶進(jìn)行匿名訪問(wèn)。在授權(quán)對(duì) ASP.NET 頁(yè)(如“/default.aspx”)的請(qǐng)求后,根據(jù) ACL 檢查該文件(例如“c:\inetpub\wwwroot\default.aspx”)以確定 IUSR_MYMACHINE 帳戶是否具有讀取該文件的權(quán)限。如果有,則授權(quán)訪問(wèn)。文件授權(quán)自動(dòng)執(zhí)行。

對(duì)于 URL 授權(quán),根據(jù)為 ASP.NET 應(yīng)用程序計(jì)算的配置數(shù)據(jù)對(duì)匿名用戶進(jìn)行檢查。如果允許訪問(wèn)請(qǐng)求的 URL,則授權(quán)該請(qǐng)求。在這種情況下,ASP.NET 檢查匿名用戶是否具有對(duì) /Default.aspx 的訪問(wèn)權(quán)(即檢查根據(jù)的是 URL 本身而不是 URL 最終解析到的文件)。

可能看起來(lái)差異很小,但它使應(yīng)用程序能夠使用像基于窗體的身份驗(yàn)證或護(hù)照身份驗(yàn)證(在此身份驗(yàn)證中用戶與計(jì)算機(jī)或域帳戶并不對(duì)應(yīng))這樣的身份驗(yàn)證方案。此外,它還啟用對(duì)虛擬資源的授權(quán),這類資源沒(méi)有物理文件作為基礎(chǔ)。例如,應(yīng)用程序可選擇將以 .stk 結(jié)尾的文件的所有請(qǐng)求映射到某一處理程序,該處理程序基于查詢字符串中存在的變量提供常用引號(hào)。在這種情況下,不存在執(zhí)行 ACL 檢查所依據(jù)的物理 .stk,因此 URL 授權(quán)用于控制對(duì)虛擬資源的訪問(wèn)。

文件授權(quán)的執(zhí)行依據(jù)的始終是由 IIS 提供的經(jīng)過(guò)身份驗(yàn)證的帳戶。如果允許匿名訪問(wèn),則該帳戶是經(jīng)過(guò)配置的匿名帳戶。否則,它使用 NT 帳戶。這與 ASP 的工作方式完全相同。

在“資源管理器”屬性頁(yè)中使用“安全”選項(xiàng)卡為給定的文件或目錄設(shè)置文件 ACL.URL 授權(quán)被配置為 ASP.NET 框架應(yīng)用程序的一部分,并在授權(quán)用戶和角色中有完整的描述。

若要激活 ASP.NET身份驗(yàn)證服務(wù),必須在應(yīng)用程序的配置文件中配置 <authentication> 元素。該元素可具有下表中列出的任何值。

Value 說(shuō)明

沒(méi)有 ASP.NET身份驗(yàn)證服務(wù)是活動(dòng)的。注意,IIS 身份驗(yàn)證服務(wù)仍可以存在。

Windows ASP.NET身份驗(yàn)證服務(wù)將 WindowsPrincipal (System.Security.Principal.WindowsPrincipal) 附加到當(dāng)前請(qǐng)求以啟用對(duì) NT 用戶或組的授權(quán)。

窗體 ASP.NET身份驗(yàn)證服務(wù)管理 Cookie 并將未經(jīng)身份驗(yàn)證的用戶重定向到登錄頁(yè)。它通常與 IIS 選項(xiàng)一起使用以允許匿名訪問(wèn)應(yīng)用程序。

護(hù)照 ASP.NET身份驗(yàn)證服務(wù)為護(hù)照 SDK(必須安裝在計(jì)算機(jī)上)提供的服務(wù)提供了一個(gè)方便的包裝。

例如,下列配置文件為應(yīng)用程序啟用基于窗體 (Cookie) 的身份驗(yàn)證:

<configuration> <system.web> <authentication mode="Forms"/> </system.web> </configuration>

“ASP.NET身份驗(yàn)證服務(wù)怎么實(shí)現(xiàn)”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI