




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第8章章 Web應(yīng)用的認(rèn)證與授權(quán)應(yīng)用的認(rèn)證與授權(quán) 內(nèi)容內(nèi)容 Web應(yīng)用的認(rèn)證應(yīng)用的認(rèn)證 Web應(yīng)用的授權(quán)應(yīng)用的授權(quán) 使用使用Membership實(shí)現(xiàn)實(shí)現(xiàn)Web應(yīng)用的認(rèn)證應(yīng)用的認(rèn)證 使用使用Role實(shí)現(xiàn)實(shí)現(xiàn)Web應(yīng)用的授權(quán)應(yīng)用的授權(quán) Web應(yīng)用的認(rèn)證應(yīng)用的認(rèn)證 在在Web.config中配置認(rèn)證信息中配置認(rèn)證信息 ASP.NET中的認(rèn)證中的認(rèn)證 在ASP.NET中的認(rèn)證過(guò)程 Windows認(rèn)證 Form認(rèn)證 Passport認(rèn)證 在在Web.config中配置認(rèn)證信息中配置認(rèn)證信息 值 說(shuō)明 Windows 將 Windows 認(rèn)證指定為默認(rèn)的身份認(rèn)證模式。將它與以下任意 形式的 Micros
2、oft Internet 信息服務(wù) (IIS) 身份認(rèn)證結(jié)合起來(lái)使用 :基本、摘要、集成 Windows 身份認(rèn)證 (NTLM/Kerberos) 或證 書(shū)。在這種情況下,我們的應(yīng)用程序?qū)⑸矸菡J(rèn)證責(zé)任委托給基 礎(chǔ) IIS Forms將 ASP.NET 基于窗體的身份認(rèn)證指定為默認(rèn)身份認(rèn)證模式 Passport將 Microsoft Passport Network 身份認(rèn)證指定為默認(rèn)身份認(rèn)證模 式 None不指定任何身份認(rèn)證。我們的應(yīng)用程序僅期待支持匿名用戶, 否則它將提供自己的身份認(rèn)證 . 在在ASP.NET中的認(rèn)證過(guò)程中的認(rèn)證過(guò)程 Windows認(rèn)證認(rèn)證 應(yīng)用場(chǎng)景應(yīng)用場(chǎng)景 應(yīng)用程序使用 A
3、ctive Directory 用戶存儲(chǔ) 構(gòu)建基于企業(yè)內(nèi)部的Web應(yīng)用 認(rèn)證機(jī)制認(rèn)證機(jī)制 WindowsAuthenticationModule 使用從 IIS 傳遞到 ASP.NET 的 Windows 訪問(wèn)令牌創(chuàng)建一個(gè) WindowsPrincipal 對(duì)象 WindowsAuthenticationModule 類使用 P/Invoke 調(diào)用 Win32 函數(shù)并獲得該用戶所屬的 Windows 組的列 表 WindowsAuthenticationModule 類將 WindowsPrincipal 對(duì)象存儲(chǔ)在 HttpContext.User 屬性中 演示和練習(xí):在演示和練習(xí):在IIS
4、中配置中配置Windows認(rèn)證認(rèn)證 多媒體演示多媒體演示 Form認(rèn)證認(rèn)證 Form認(rèn)證場(chǎng)景認(rèn)證場(chǎng)景 構(gòu)建基于Internet的Web應(yīng)用 需要建立自己的用戶管理和存儲(chǔ)機(jī)制 Form認(rèn)證(續(xù))認(rèn)證(續(xù)) Form認(rèn)證機(jī)制認(rèn)證機(jī)制 在在Web.config中配置中配置Form認(rèn)證認(rèn)證 配置項(xiàng)配置說(shuō)明 loginUrl指向應(yīng)用程序的自定義登錄頁(yè)。應(yīng)該將登錄頁(yè)放在需 要安全套接字層 (SSL) 的文件夾中。這有助于確保憑 據(jù)從瀏覽器傳到 Web 服務(wù)器時(shí)的完整性 protection設(shè)置為 All,以指定窗體身份驗(yàn)證票的保密性和完整性 。配置該項(xiàng)后,將使用 machineKey 元素上指定的算 法對(duì)
5、身份驗(yàn)證票證進(jìn)行加密,并且使用同樣是 machineKey 元素上指定的哈希算法進(jìn)行簽名 timeout用于指定窗體身份驗(yàn)證會(huì)話的有限生存期。默認(rèn)值為 30 分鐘。如果頒發(fā)持久的窗體身份驗(yàn)證 Cookie, timeout 屬性還用于設(shè)置持久 Cookie 的生存期 name和 path 設(shè)置為應(yīng)用程序的配置文件中定義的值 requireSSL設(shè)置為 false。該配置意味著身份驗(yàn)證 Cookie 被通過(guò)未 經(jīng) SSL 加密的信道進(jìn)行傳輸。如果擔(dān)心會(huì)話竊取,應(yīng) 考慮將 requireSSL 設(shè)置為 true 在在Web.config中配置中配置Form認(rèn)證認(rèn)證 配置項(xiàng)配置說(shuō)明 slidingE
6、xpirati on 設(shè)置為 true 以執(zhí)行變化的會(huì)話生存期。這意味著只要 用戶在站點(diǎn)上處于活動(dòng)狀態(tài),會(huì)話超時(shí)就會(huì)定期重置 defaultUrl設(shè)置為應(yīng)用程序的 Default.aspx 頁(yè) cookieless設(shè)置為 UseDeviceProfile,以指定應(yīng)用程序?qū)λ兄С?Cookie 的瀏覽器都使用 Cookie。如果不支持 Cookie 的瀏覽器訪問(wèn)該站點(diǎn),窗體身份驗(yàn)證在 URL 上打包 身份驗(yàn)證票 enableCrossAp pRedirects 設(shè)置為 false,以指明窗體身份驗(yàn)證不支持自動(dòng)處理在 應(yīng)用程序之間傳遞的查詢字符串上的票證以及作為某 個(gè)窗體 POST 一部分的傳遞
7、的票證 Passport認(rèn)證認(rèn)證 Passport認(rèn)證是一種認(rèn)證是一種Microsoft提供的集中認(rèn)證服務(wù)提供的集中認(rèn)證服務(wù) 使用使用Passport進(jìn)行認(rèn)證的步驟:進(jìn)行認(rèn)證的步驟: 獲取.NET Passport Software Development Kit (SDK) 在Web.config文件中按如下代碼來(lái)配置Passport認(rèn) 證 使用.NET Passport SDK中的功能來(lái)實(shí)現(xiàn)認(rèn)證 Web應(yīng)用的授權(quán)應(yīng)用的授權(quán) 概述概述 配置授權(quán)模塊 FileAuthorizationModule UrlAuthorizationModule 文件授權(quán)文件授權(quán) 使用Windows ACL進(jìn)行授
8、權(quán) 在Web.config中進(jìn)行配置 ,指定相應(yīng)目錄或文件 不同的權(quán)限 URL授權(quán)授權(quán) 顯式允許或拒絕某個(gè)用戶名或角色對(duì)特定目錄的訪問(wèn)權(quán)限顯式允許或拒絕某個(gè)用戶名或角色對(duì)特定目錄的訪問(wèn)權(quán)限 在在Web.config中進(jìn)行配置中進(jìn)行配置 屬性 說(shuō)明 users標(biāo)識(shí)此元素的目標(biāo)身份(用戶賬戶)。 用問(wèn)號(hào) (?) 標(biāo)識(shí)匿名用戶??梢杂眯翘?hào) (*) 指定所有 經(jīng)過(guò)身份驗(yàn)證的用戶 roles 為被允許或被拒絕訪問(wèn)資源的當(dāng)前請(qǐng)求標(biāo)識(shí)一個(gè)角色 (RolePrincipal 對(duì)象) verbs 定義操作所要應(yīng)用到的 HTTP 謂詞,如 GET、HEAD 和 POST。默認(rèn)值為“*”,它指定了所有謂詞 使用使用
9、Membership實(shí)現(xiàn)實(shí)現(xiàn)Web應(yīng)用的認(rèn)證應(yīng)用的認(rèn)證 Membership系統(tǒng)組件介紹系統(tǒng)組件介紹 配置和啟用配置和啟用Membership 成員資格應(yīng)用編程接口成員資格應(yīng)用編程接口 ASP.NET 登錄控件登錄控件 Membership數(shù)據(jù)存儲(chǔ)和提供程序數(shù)據(jù)存儲(chǔ)和提供程序 Membership系統(tǒng)組件介紹系統(tǒng)組件介紹 Membership Membership APIAPI MembershipMembership 數(shù)據(jù)數(shù)據(jù) Other Data Stores 控件控件 LoginStatusLoginView Other Membership Providers Membership M
10、embership 提供程序提供程序 MembershipMembershipUser AspNetSqlMembershipProvider SQL Server Other Login Controls Login 配置和啟用配置和啟用Membership 將成員資格選項(xiàng)指定為站點(diǎn)配置的一部分將成員資格選項(xiàng)指定為站點(diǎn)配置的一部分 將應(yīng)用程序配置為使用將應(yīng)用程序配置為使用 Forms 身份驗(yàn)證(與身份驗(yàn)證(與 Windows 或或 Passport 身份驗(yàn)證不同)身份驗(yàn)證不同) 為成員資格定義用戶賬戶為成員資格定義用戶賬戶 成員資格應(yīng)用編程接口成員資格應(yīng)用編程接口 Membership Me
11、mbershipUser 演示和練習(xí):通過(guò)演示和練習(xí):通過(guò)Membership和和MembershipUser創(chuàng)創(chuàng) 建用戶管理系統(tǒng)建用戶管理系統(tǒng) Membership 主要屬性主要屬性 名稱 說(shuō)明 ApplicationName 獲取或設(shè)置應(yīng)用程序的名稱 EnablePasswordReset 獲得一個(gè)值,指示當(dāng)前成員資格提供程序是 否配置為允許用戶重置其密碼 EnablePasswordRetrie val 獲得一個(gè)值,指示當(dāng)前成員資格提供程序是 否配置為允許用戶檢索其密碼 HashAlgorithmType 用于哈希密碼的算法的標(biāo)識(shí)符 MaxInvalidPasswordA ttempts
12、 獲取鎖定成員資格用戶前允許的無(wú)效密碼或 無(wú)效密碼提示問(wèn)題答案嘗試次數(shù) MinRequiredNonAlph anumericCharacters 獲取有效密碼中必須包含的最少特殊字符數(shù) MinRequiredPassword Length 獲取密碼所要求的最小長(zhǎng)度 Membership 主要屬性主要屬性 名稱 說(shuō)明 PasswordAttemptWind ow 獲取在鎖定成員資格用戶之前允許的最大無(wú) 效密碼或無(wú)效密碼提示問(wèn)題答案嘗試次數(shù)的 分鐘數(shù) PasswordStrengthRegu larExpression 獲取用于計(jì)算密碼的正則表達(dá)式 Provider 獲取對(duì)應(yīng)用程序的默認(rèn)成員資格
13、提供程序的 引用 Providers 獲取一個(gè)用于 ASP.NET 應(yīng)用程序的成員資格 提供程序的集合 RequiresQuestionAnd Answer 獲取一個(gè)值,該值指示默認(rèn)成員資格提供程 序是否要求用戶在進(jìn)行密碼重置和檢索時(shí)回 答密碼提示問(wèn)題 UserIsOnlineTimeWin dow 指定用戶在最近一次活動(dòng)的日期/時(shí)間戳之后 被視為聯(lián)機(jī)的分鐘數(shù) Membership 主要方法主要方法 名稱 說(shuō)明 CreateUser 已重載。 將新用戶添加到數(shù)據(jù)存儲(chǔ)區(qū) DeleteUser 已重載。 從數(shù)據(jù)庫(kù)中刪除一個(gè)用戶 FindUsersByEmail 已重載。 獲取一個(gè)成員資格用戶的集合
14、,這些 用戶的電子郵件地址包含要匹配的指定電子郵件 地址 FindUsersByName 已重載。 獲取一個(gè)成員資格用戶的集合,這些 用戶的用戶名包含要匹配的指定用戶名 GeneratePassword 生成指定長(zhǎng)度的隨機(jī)密碼 GetAllUsers 已重載。 獲取數(shù)據(jù)庫(kù)中用戶的集合 GetNumberOfUsers Online 獲取當(dāng)前訪問(wèn)應(yīng)用程序的用戶數(shù) GetUser 已重載。 從數(shù)據(jù)源獲取成員資格用戶的信息 Membership 主要方法主要方法 名稱 說(shuō)明 GetUserNameByE mail 獲取一個(gè)用戶名,其中該用戶的電子郵件地址與 指定的電子郵件地址匹配 UpdateUse
15、r 用指定用戶的信息更新數(shù)據(jù)庫(kù) ValidateUser 驗(yàn)證提供的用戶名和密碼是有效的 MembershipUser 主要屬性主要屬性 名稱 說(shuō)明 Comment 獲取或設(shè)置成員資格用戶的特定于應(yīng)用程序的信 息 CreationDate 獲取將用戶添加到成員資格數(shù)據(jù)存儲(chǔ)區(qū)的日期和 時(shí)間 Email 獲取或設(shè)置成員資格用戶的電子郵件地址 IsApproved 獲取或設(shè)置一個(gè)值,表示是否可以對(duì)成員資格用 戶進(jìn)行身份驗(yàn)證 IsLockedOut 獲取一個(gè)值,該值指示成員資格用戶是否因被鎖 定而無(wú)法進(jìn)行驗(yàn)證 IsOnline 獲取一個(gè)值,表示用戶當(dāng)前是否聯(lián)機(jī) LastActivityDate 獲取或
16、設(shè)置成員資格用戶上次進(jìn)行身份驗(yàn)證或訪 問(wèn)應(yīng)用程序的日期和時(shí)間 LastLockoutDate 獲取最近一次鎖定成員資格用戶的日期和時(shí)間 MembershipUser 主要屬性主要屬性 名稱 說(shuō)明 LastLoginDate 獲取或設(shè)置用戶上次進(jìn)行身份驗(yàn)證的日期和時(shí)間 LastPasswordChan gedDate 獲取上次更新成員資格用戶的密碼的日期和時(shí)間 PasswordQuestion 獲取成員資格用戶的密碼提示問(wèn)題 ProviderName 獲取成員資格提供程序的名稱,該提供程序存儲(chǔ) 并檢索成員資格用戶的用戶信息 ProviderUserKey 從用戶的成員資格數(shù)據(jù)源獲取用戶標(biāo)識(shí)符 U
17、serName 獲取成員資格用戶的登錄名 MembershipUser 主要方法主要方法 名稱 說(shuō)明 ChangePassword 更新成員資格數(shù)據(jù)存儲(chǔ)區(qū)中成員資格用戶的 密碼 ChangePasswordQuest ionAndAnswer 更新成員資格數(shù)據(jù)存儲(chǔ)區(qū)中成員資格用戶的 密碼提示問(wèn)題和密碼提示問(wèn)題答案 GetPassword 已重載。 從成員資格數(shù)據(jù)存儲(chǔ)區(qū)獲取成員資 格用戶的密碼 ResetPassword 已重載。 將用戶密碼重置為一個(gè)自動(dòng)生成的 新密碼 ToString 已重寫(xiě)。 返回成員資格用戶的用戶名 UnlockUser 清除用戶的鎖定狀態(tài)以便可以驗(yàn)證成員資格 用戶 演示
18、和練習(xí):通過(guò)演示和練習(xí):通過(guò)Membership和和MembershipUser實(shí)現(xiàn)用戶實(shí)現(xiàn)用戶 管理功能管理功能 多媒體演示多媒體演示 ASP.NET 登錄控件登錄控件 CreateUserWizard 演示和練習(xí):使用演示和練習(xí):使用CreateUserWizard控件創(chuàng)建用戶控件創(chuàng)建用戶 Login 演示和練習(xí):使用演示和練習(xí):使用Login控件登錄控件登錄Web應(yīng)用應(yīng)用 其他控件其他控件 演示和練習(xí):實(shí)現(xiàn)主要的用戶管理和登錄功能演示和練習(xí):實(shí)現(xiàn)主要的用戶管理和登錄功能 CreateUserWizard CreateUserWizard 控件收集潛在用戶提供的信息控件收集潛在用戶提供的信
19、息 , 將新用戶添加到將新用戶添加到 ASP.NET 成員資格系統(tǒng)中成員資格系統(tǒng)中 演示和練習(xí):使用演示和練習(xí):使用CreateUserWizard控件創(chuàng)建用戶控件創(chuàng)建用戶 多媒體演示多媒體演示 Login 顯示用于執(zhí)行用戶身份驗(yàn)證的用戶界面顯示用于執(zhí)行用戶身份驗(yàn)證的用戶界面 使用使用Login控件,主要包括:控件,主要包括: 控制 Login 控件在用戶登錄時(shí)是否可見(jiàn) 指定登錄成功時(shí)顯示的頁(yè)面 控制是否將身份驗(yàn)證令牌存儲(chǔ)在持久性 Cookie 中 將“幫助”超鏈接添加到 Login 控件 將圖像添加到 Login 控件 演示和練習(xí):創(chuàng)建演示和練習(xí):創(chuàng)建Login控件登錄控件登錄Web應(yīng)用應(yīng)用 多媒體演示多媒體演示 其他控件其他控件 LoginView LoginStatus LoginName PasswordRecovery ChangePassword 演示和練習(xí):實(shí)現(xiàn)主要的用戶管理和登錄功能演示和練習(xí):實(shí)現(xiàn)主要的用戶管理和登錄功能 多媒體演示多媒體演示 Membership數(shù)據(jù)存儲(chǔ)和提供程序數(shù)據(jù)存儲(chǔ)和提供程序 創(chuàng)建自定義成員資格提供程序主要有兩個(gè)原因:創(chuàng)建自定義成員資格提供程序主要有兩
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 舞蹈社團(tuán)活動(dòng)風(fēng)采展示
- 蛋制品加工過(guò)程的安全控制
- 危廢處理車間工作總結(jié)
- 通訊寫(xiě)作技巧培訓(xùn)
- 藍(lán)黃色商務(wù)年終總結(jié)
- 醫(yī)院藥品二級(jí)庫(kù)房管理
- 腰痛臨床表現(xiàn)
- 小學(xué)英語(yǔ)連系動(dòng)詞的使用技巧
- 建筑行業(yè)古建筑保護(hù)與維修知識(shí)考點(diǎn)梳理
- 急診科醫(yī)生面對(duì)暴力和攻擊的應(yīng)對(duì)策略
- 校園餐專項(xiàng)整治行動(dòng)工作方案
- RB/T 223-2023國(guó)產(chǎn)化檢測(cè)儀器設(shè)備驗(yàn)證評(píng)價(jià)指南氣相色譜儀
- DB3417-T 031-2024 學(xué)校食堂場(chǎng)所布局設(shè)置規(guī)范
- 《孤獨(dú)癥譜系障礙:家長(zhǎng)及專業(yè)人員指南》筆記
- 2024年全國(guó)職業(yè)院校技能大賽高職組(檢驗(yàn)檢疫技術(shù)賽項(xiàng))考試題庫(kù)(含答案)
- 博士后研究報(bào)告(出站)
- 2024年單招考試題
- DL∕T 802.8-2014 電力電纜用導(dǎo)管技術(shù)條件 第8部分:埋地用改性聚丙烯塑料單壁波紋電纜導(dǎo)管
- 反賄賂與反腐敗管理制度
- 鄉(xiāng)村振興相關(guān)知識(shí)備考試題庫(kù)(含答案)
- 2024年節(jié)水知識(shí)競(jìng)賽考試題及答案
評(píng)論
0/150
提交評(píng)論