版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目二
安全的登錄認(rèn)證Web安全與防護(hù)本任務(wù)要點(diǎn)學(xué)習(xí)目標(biāo)登錄認(rèn)證步驟登錄頁(yè)面表單創(chuàng)建驗(yàn)證碼實(shí)現(xiàn)熟悉登錄認(rèn)證原理及實(shí)現(xiàn)方法。能夠?qū)崿F(xiàn)基本的登錄認(rèn)證功能。任務(wù)一
登錄認(rèn)證功能實(shí)現(xiàn)目錄CONTENTS01/了解登錄認(rèn)證02/創(chuàng)建登錄頁(yè)面03/判斷登錄狀態(tài)04/增加驗(yàn)證碼了解登錄認(rèn)證01什么是登錄認(rèn)證?登錄認(rèn)證是在Web應(yīng)用程序中實(shí)現(xiàn)身份驗(yàn)證和授權(quán)的過(guò)程。在用戶嘗試登錄到Web應(yīng)用程序時(shí),登錄認(rèn)證將驗(yàn)證用戶的身份并授予相應(yīng)的訪問(wèn)權(quán)限。通常,登錄認(rèn)證包括兩個(gè)步驟:身份驗(yàn)證和授權(quán)。身份驗(yàn)證是確定用戶是否是所聲稱的用戶的過(guò)程。通常,在Web應(yīng)用程序中,這是通過(guò)用戶名和密碼的組合來(lái)驗(yàn)證用戶的身份。用戶提供用戶名和密碼,然后Web應(yīng)用程序?qū)z查這些憑據(jù)是否與已知的憑據(jù)匹配。如果驗(yàn)證成功,用戶就被認(rèn)為是合法用戶。授權(quán)是在確定用戶的身份后確定用戶的訪問(wèn)權(quán)限。授權(quán)通?;谟脩舻纳矸莺徒巧_定用戶可以訪問(wèn)哪些資源。授權(quán)可以限制用戶訪問(wèn)特定頁(yè)面、數(shù)據(jù)或功能。了解登錄認(rèn)證01驗(yàn)證用戶
憑據(jù)創(chuàng)建登錄頁(yè)面確認(rèn)用戶
權(quán)限登錄狀態(tài)存儲(chǔ)在Web應(yīng)用程序中,常用的身份驗(yàn)證方法包括基于用戶密碼的身份驗(yàn)證、基于證書的身份驗(yàn)證、基于令牌的身份驗(yàn)證等。這些方法各有優(yōu)缺點(diǎn),根據(jù)應(yīng)用程序的需求和安全要求選擇合適的身份驗(yàn)證方法非常重要。頁(yè)面允許用戶輸入他們的用戶名和密碼使用數(shù)據(jù)庫(kù)中存儲(chǔ)的憑據(jù)信息根據(jù)用戶的角色和訪問(wèn)權(quán)限確定用戶的訪問(wèn)權(quán)限后續(xù)頁(yè)面訪問(wèn)時(shí)可以使用此狀態(tài)進(jìn)行授權(quán)創(chuàng)建登錄頁(yè)面02在實(shí)現(xiàn)登錄認(rèn)證的第一步是創(chuàng)建登錄頁(yè)面,該頁(yè)面允許用戶輸入他們的用戶名和密碼。通過(guò)HTML代碼創(chuàng)建用于用戶輸入的基本表單包含:用戶名輸入框密碼輸入框驗(yàn)證碼輸入框登錄按鈕
通過(guò)按提交按鈕將用戶輸入的信息發(fā)送至check.php頁(yè)面檢查用戶輸入是否正確。完整代碼見(jiàn)教材2.1.2admin/login.php判斷登錄狀態(tài)03為了防止未授權(quán)訪問(wèn),用戶在訪問(wèn)index.php時(shí)應(yīng)該判斷用戶是否登錄并且為管理員用戶。在博客系統(tǒng)中admin/index.php中增加如下代碼:該代碼的功能是引入admin/header.php文件。我們?cè)谠撐募信袛嗟卿浻脩羰欠駷楣芾韱T,如果不為管理就跳轉(zhuǎn)到登錄頁(yè)防止非管理員訪問(wèn)后臺(tái)頁(yè)面。代碼如下:完整代碼見(jiàn)教材2.1.3當(dāng)$_SESSION['is_admin']為False的時(shí)候說(shuō)明用戶不為管理員則跳轉(zhuǎn)到admin/login.php頁(yè)面強(qiáng)制要求登錄才能訪問(wèn)。admin/index.phpadmin/header.php判斷登錄狀態(tài)03完整代碼見(jiàn)教材2.1.3admin/check.php增加對(duì)用戶提交表單信息的校驗(yàn),以確認(rèn)用戶身份信息是否正確,首先從請(qǐng)求中獲取用戶輸入的用戶名、密碼以及驗(yàn)證碼首先獲取了用戶通過(guò)表單提交的用戶名和密碼,并進(jìn)行了初步的驗(yàn)證,如果其中有任意一個(gè)為空,則直接輸出錯(cuò)誤提示信息并跳轉(zhuǎn)回登錄頁(yè)面。然后獲取了用戶通過(guò)表單提交的驗(yàn)證碼,并將其轉(zhuǎn)換為小寫形式并對(duì)驗(yàn)證碼進(jìn)行驗(yàn)證,如果為空或不正確,則輸出錯(cuò)誤提示信息并跳轉(zhuǎn)回登錄頁(yè)面。接下來(lái)將用戶輸入的密碼進(jìn)行了MD5加密。通過(guò)SQL語(yǔ)句查詢數(shù)據(jù)庫(kù),以檢查用戶名是否存在。如果存在,則再次查詢數(shù)據(jù)庫(kù),以檢查用戶名和密碼是否匹配。如果匹配成功,則將會(huì)話中的$is_admin變量設(shè)置為true,并輸出登錄成功提示信息,并跳轉(zhuǎn)到主頁(yè)面。如果匹配失敗,則輸出相應(yīng)的錯(cuò)誤提示信息,并跳轉(zhuǎn)回登錄頁(yè)面。增加驗(yàn)證碼04驗(yàn)證碼(CAPTCHA)是一種計(jì)算機(jī)程序,用于判斷訪問(wèn)網(wǎng)站的用戶是否是人類或惡意程序。驗(yàn)證碼系統(tǒng)可以生成不同類型的圖形、文字或聲音的測(cè)試來(lái)識(shí)別用戶身份,以幫助網(wǎng)站防止自動(dòng)化攻擊和濫用。驗(yàn)證碼根據(jù)使用的技術(shù)和實(shí)現(xiàn)方式的不同,可以分為以下幾種類型:圖像驗(yàn)證碼數(shù)學(xué)計(jì)算驗(yàn)證碼聲音驗(yàn)證碼滑動(dòng)驗(yàn)證碼驗(yàn)證碼的主要目的是保護(hù)網(wǎng)站和用戶的信息免受惡意攻擊和濫用。許多自動(dòng)化攻擊和濫用都是通過(guò)機(jī)器人和腳本來(lái)進(jìn)行的,這些腳本可以自動(dòng)化訪問(wèn)網(wǎng)站并進(jìn)行各種活動(dòng),例如發(fā)送垃圾郵件、惡意軟件分發(fā)、網(wǎng)絡(luò)爬蟲等等。增加驗(yàn)證碼04以圖像驗(yàn)證碼為例增加驗(yàn)證碼功能,防止惡意程序攻擊。在博客系統(tǒng)源文件admin/login.php中增加如下代碼:admin/login.php在用戶訪問(wèn)該頁(yè)面時(shí)去請(qǐng)求admin/code.php頁(yè)面,獲取一個(gè)新的驗(yàn)證碼。在博客系統(tǒng)源文件admin/code.php中實(shí)現(xiàn)了如下邏輯:
首先,通過(guò)調(diào)用random()函數(shù)生成一個(gè)4位隨機(jī)字符串,用于作為驗(yàn)證碼。然后,定義了驗(yàn)證碼圖片的寬度和高度,以及需要?jiǎng)?chuàng)建的圖層的圖片格式為image/png。接著,創(chuàng)建一個(gè)指定大小的圖層,設(shè)置背景色、模糊點(diǎn)顏色和字體顏色。通過(guò)隨機(jī)繪制許多點(diǎn)來(lái)創(chuàng)建背景的模糊效果。使用imagestring函數(shù)將驗(yàn)證碼字符串繪制到圖像上,同時(shí)在圖像周圍繪制矩形。最后,輸出圖像并銷毀圖層對(duì)象,將驗(yàn)證碼字符串存儲(chǔ)到PHPSession變量$_SESSION['vertify']中以供后續(xù)驗(yàn)證使用。完整代碼見(jiàn)教材2.1.4課堂實(shí)踐一、任務(wù)名稱:登錄認(rèn)證功能實(shí)現(xiàn)二、任務(wù)內(nèi)容:編輯博客系統(tǒng)源碼實(shí)現(xiàn)登錄認(rèn)證功能,包含表單頁(yè)面中用戶名、密碼、驗(yàn)證碼的交互以及后端校驗(yàn)邏輯。三、工具需求:PHP開(kāi)發(fā)環(huán)境四、任務(wù)要求:完成實(shí)踐練習(xí)后,由老師檢查完成情況。課堂思考一、服務(wù)端是如何保存用戶登錄狀態(tài)的?二、滑動(dòng)驗(yàn)證碼是怎么實(shí)現(xiàn)的?三、為什么要用MD5加密用戶提交的密碼?四、用戶提交的表單信息為什么存儲(chǔ)在$POST變量中?五、登錄認(rèn)證流程中有哪些可能存在的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030衢州綠色食品加工產(chǎn)業(yè)集群區(qū)域公用品牌建設(shè)規(guī)劃分析研究方案提綱
- 2025-2030融合科技金融行業(yè)市場(chǎng)發(fā)展分析需創(chuàng)新運(yùn)營(yíng)模式調(diào)研規(guī)劃報(bào)告
- 2025-2030蒸汽機(jī)車退役資產(chǎn)處置行業(yè)分析行業(yè)現(xiàn)狀年薪評(píng)價(jià)技術(shù)報(bào)告
- 2025-2030葡萄種植區(qū)域優(yōu)化與產(chǎn)業(yè)轉(zhuǎn)型升級(jí)研究
- 安全員A證考試復(fù)習(xí)試題含答案詳解【典型題】
- 常州常州機(jī)電職業(yè)技術(shù)學(xué)院2025年招聘專任教師專職輔導(dǎo)員和馬克思主義學(xué)院教師筆試歷年參考題庫(kù)附帶答案詳解
- 宿遷2025年江蘇宿遷市工會(huì)系統(tǒng)招聘工會(huì)社會(huì)工作者23人筆試歷年參考題庫(kù)附帶答案詳解
- 寶雞2025年陜西寶雞市千陽(yáng)縣招聘城鎮(zhèn)社區(qū)專職工作人員8人筆試歷年參考題庫(kù)附帶答案詳解
- 安徽2025年安徽汽車職業(yè)技術(shù)學(xué)院教職工校園招聘筆試歷年參考題庫(kù)附帶答案詳解
- 寧波浙江寧波市鄞州區(qū)第二醫(yī)院醫(yī)共體總院編外人員招聘筆試歷年參考題庫(kù)附帶答案詳解
- 護(hù)士夜班應(yīng)急預(yù)案
- 新版二年級(jí)道德與法治《我們都是中國(guó)人》教學(xué)設(shè)計(jì)(2課時(shí))
- XX企業(yè)核心優(yōu)勢(shì)與戰(zhàn)略發(fā)展
- 2025年中國(guó)低氘水行業(yè)市場(chǎng)全景分析及前景機(jī)遇研判報(bào)告
- 管道區(qū)段長(zhǎng)管理辦法
- 2025年江西公務(wù)員考試(財(cái)經(jīng)管理)測(cè)試題及答案
- CRT-YS4690消防控制室圖形顯示裝置使用說(shuō)明書-營(yíng)口賽福德
- 植筋工程施工驗(yàn)收記錄表范例
- 2025至2030年中國(guó)冷凍食品行業(yè)市場(chǎng)調(diào)研及行業(yè)投資策略研究報(bào)告
- 壓空罐安全知識(shí)培訓(xùn)課件
- 2025年江蘇南京市建鄴區(qū)招聘第一批購(gòu)崗人員5人筆試模擬試題及答案詳解1套
評(píng)論
0/150
提交評(píng)論