資源描述:
《web應(yīng)用程序設(shè)計第10章》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第10章Web應(yīng)用的安全性Web應(yīng)用安全性概述ASP.NET的身份驗證與授權(quán)ASP.NET的成員資格技術(shù)基于角色安全性與數(shù)據(jù)訪問安全性一、Web應(yīng)用安全性概述Web應(yīng)用的安全性問題解決Web應(yīng)用安全問題的方法IIS的身份驗證與安全1、Web應(yīng)用的安全性問題攻擊者的非法攻擊內(nèi)部攻擊者:內(nèi)部員工、病毒(包括木馬和蠕蟲)外部攻擊者:電腦黑客或破解者常見類型攻擊技術(shù)型:拒絕服務(wù)攻擊、計算機自動攻擊、病毒、蠕蟲、木馬、安全漏洞非技術(shù)型:社交工程2、解決Web應(yīng)用安全問題的方法安全威脅的分類(STRIDE模型)Spoofing(身份欺騙)Tampering(篡改數(shù)據(jù))Repudiation(否認(rèn))In
2、formationDisclosure(信息泄漏)DenialofService(拒絕服務(wù))ElevationofPrivilege(特權(quán)升級)2、解決Web應(yīng)用安全問題的方法安全技術(shù)身份驗證授權(quán)審核:日志支持保密:加密技術(shù)完整性認(rèn)可3、IIS的身份驗證與安全I(xiàn)IS的身份驗證管理匿名訪問:以Internet來賓用戶(IUSER_計算機名)訪問集成Windows身份驗證:企業(yè)內(nèi)部網(wǎng)使用基本身份驗證:明文傳送用戶名/密碼,安全性低摘要式身份驗證:MD5協(xié)議傳送加密的用戶名/密碼IIS的授權(quán)管理訪問權(quán)限:包括讀取、寫入、目錄瀏覽、腳本資源訪問、記錄訪問和索引資源等;執(zhí)行權(quán)限:可精確地控制程序和腳
3、本的運行二、ASP.NET的身份驗證與授權(quán)ASP.NET的身份驗證和授權(quán)概述ASP.NET的身份驗證與授權(quán)的配置ASP.NET的表單身份驗證1、ASP.NET的身份驗證和授權(quán)概述ASP.NET的身份驗證ASP.NET的授權(quán)機制A、ASP.NET的身份驗證(1)Windows身份驗證直接利用Windows系統(tǒng)的用戶管理功能達(dá)到身份驗證,是最快的身份驗證模式。它適合Intranet、適合于Web應(yīng)用程序的后臺業(yè)務(wù)管理。(2)Forms身份驗證它通過登錄頁面實現(xiàn)身份驗證。適合于Internet用戶。(3)Passport身份驗證它由.NetPassport服務(wù)來驗證用戶身份,通過驗證后返回驗證憑
4、據(jù)。適合于多個站點的一次性登錄管理。最慢的身份驗證方法B.ASP.NET的授權(quán)機制(1)文件授權(quán)內(nèi)置文件授權(quán)模塊(即FileAuthorizationModule),通過檢查Web資源的訪問控制列表(ACL),以確定用戶是否具有訪問該資源的權(quán)限。只能用于Windows身份驗證。(2)URL授權(quán)內(nèi)置URL授權(quán)模塊(即UrlAuthorizationModule)執(zhí)行授權(quán),檢查遠(yuǎn)程用戶或角色是否具有訪問特定URL資源的權(quán)限。適用于Forms身份驗證2、ASP.NET的身份驗證與授權(quán)的配置ASP.NET身份驗證的配置ASP.NET授權(quán)的配置A.ASP.NET身份驗證的配置在配置文件Web.con
5、fig中:mode:Windows/Forms/Passport/NoneB.ASP.NET授權(quán)的配置在配置文件中使用元素進(jìn)行允許或拒絕訪問的設(shè)置或元素的屬性:users用來指定用戶,roles用來指定角色指定用戶或角色時可使用通配符:*:在或中表示允許或拒絕任何人訪問?:在中允許匿名用戶訪問,在中表示拒絕未授權(quán)的用戶訪問注意:授權(quán)時,可針對應(yīng)用程序級授權(quán),也可以針對頁面級
6、授權(quán)。其中,后者使用元素配置。例P235三、ASP.NET的表單身份驗證表單身份驗證的工作機制啟用表單身份驗證為表單身份驗證自定義驗證邏輯1.表單身份驗證的工作機制使用表單身份驗證時,首先顯示登錄頁面。提交用戶名和密碼后,ASP.NET執(zhí)行表單驗證模塊并創(chuàng)建表單驗證對象來管理身份驗證。表單驗證對象(FormsAuthentication)的常用方法:Authenticate():將賬戶信息與配置文件中的賬戶信息進(jìn)行比對RedirectFromLoginPage()
7、RedirectToLoginPage()SignOut():退出登錄狀態(tài)并刪除驗證憑據(jù)。
8、ASP.NET允許自定義程序邏輯,將用戶名和密碼與位于數(shù)據(jù)庫、活動目錄或注冊表中的賬戶信息進(jìn)行比較。通過驗證時,驗證憑據(jù)以Cookie或QueryString的形式返給客戶端,當(dāng)再次請求訪問時將自動被提交給服務(wù)器。若驗證憑據(jù)失效或丟失,則需要重新登錄。2.啟用表單身份驗證例: