您好,登錄后才能下訂單哦!
本篇內容介紹了“ASP.NET身份驗證服務怎么實現”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
身份驗證和授權
ASP.NET 與 IIS 一起使用以支持身份驗證,并使用基本、簡要和 Windows 身份驗證。ASP.NET 支持 Microsoft Passport 身份驗證服務,該服務提供單一登錄服務和對用戶配置文件服務的支持。ASP.NET 還為要使用基于窗體的身份驗證的應用程序提供可靠的服務。基于窗體的身份驗證使用 Cookie 鑒別用戶的身份,并允許應用程序執行自己的憑據驗證。
認識到 ASP.NET身份驗證服務取決于 IIS 提供的身份驗證服務很重要。例如,若要在 IIS 應用程序中使用基本身份驗證,必須使用 Internet 服務管理器工具為應用程序配置基本身份驗證的使用。
ASP.NET 提供兩類授權服務:
根據 ACL 或資源權限進行檢查,以確定已經過驗證的用戶帳戶能否訪問資源。
URL 授權,它授權 Web 空間各部分的標識。
為闡釋差異,請考慮這樣一個方案,在該方案中應用程序被配置為允許使用 IUSR_MYMACHINE 帳戶進行匿名訪問。在授權對 ASP.NET 頁(如“/default.aspx”)的請求后,根據 ACL 檢查該文件(例如“c:\inetpub\wwwroot\default.aspx”)以確定 IUSR_MYMACHINE 帳戶是否具有讀取該文件的權限。如果有,則授權訪問。文件授權自動執行。
對于 URL 授權,根據為 ASP.NET 應用程序計算的配置數據對匿名用戶進行檢查。如果允許訪問請求的 URL,則授權該請求。在這種情況下,ASP.NET 檢查匿名用戶是否具有對 /Default.aspx 的訪問權(即檢查根據的是 URL 本身而不是 URL 最終解析到的文件)。
可能看起來差異很小,但它使應用程序能夠使用像基于窗體的身份驗證或護照身份驗證(在此身份驗證中用戶與計算機或域帳戶并不對應)這樣的身份驗證方案。此外,它還啟用對虛擬資源的授權,這類資源沒有物理文件作為基礎。例如,應用程序可選擇將以 .stk 結尾的文件的所有請求映射到某一處理程序,該處理程序基于查詢字符串中存在的變量提供常用引號。在這種情況下,不存在執行 ACL 檢查所依據的物理 .stk,因此 URL 授權用于控制對虛擬資源的訪問。
文件授權的執行依據的始終是由 IIS 提供的經過身份驗證的帳戶。如果允許匿名訪問,則該帳戶是經過配置的匿名帳戶。否則,它使用 NT 帳戶。這與 ASP 的工作方式完全相同。
在“資源管理器”屬性頁中使用“安全”選項卡為給定的文件或目錄設置文件 ACL.URL 授權被配置為 ASP.NET 框架應用程序的一部分,并在授權用戶和角色中有完整的描述。
若要激活 ASP.NET身份驗證服務,必須在應用程序的配置文件中配置 <authentication> 元素。該元素可具有下表中列出的任何值。
Value 說明
沒有 ASP.NET身份驗證服務是活動的。注意,IIS 身份驗證服務仍可以存在。
Windows ASP.NET身份驗證服務將 WindowsPrincipal (System.Security.Principal.WindowsPrincipal) 附加到當前請求以啟用對 NT 用戶或組的授權。
窗體 ASP.NET身份驗證服務管理 Cookie 并將未經身份驗證的用戶重定向到登錄頁。它通常與 IIS 選項一起使用以允許匿名訪問應用程序。
護照 ASP.NET身份驗證服務為護照 SDK(必須安裝在計算機上)提供的服務提供了一個方便的包裝。
例如,下列配置文件為應用程序啟用基于窗體 (Cookie) 的身份驗證:
<configuration> <system.web> <authentication mode="Forms"/> </system.web> </configuration>
“ASP.NET身份驗證服務怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。