




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本章教學(xué)要點(diǎn)本章要點(diǎn):8-1網(wǎng)站安全登錄技術(shù)8-2網(wǎng)站登錄管理技術(shù)8-3登錄控件及使用8-4頁面安全訪問技術(shù)8-5
Sql注入攻擊的防范8-6數(shù)據(jù)加密技術(shù)
1思考問題?什么是用戶管理?什么是角色?網(wǎng)站的訪問權(quán)限如何配置?什么是可視化的配置?什么是配置文件?配置文件名為什么?28-1網(wǎng)站安全登錄技術(shù)
38.1.1成員管理和角色管理概念
成員管理和權(quán)限管理,是網(wǎng)站安全管理的重要組成部分。如何確保網(wǎng)站中的重要內(nèi)容不被未授權(quán)的用戶訪問,是網(wǎng)絡(luò)信息安全的重要內(nèi)容。8-1網(wǎng)站安全登錄技術(shù)1、Membership(成員管理).NET2.0中,Membership提供了一整套內(nèi)置的用于用戶管理、身份驗(yàn)證、用戶信任以及數(shù)據(jù)庫架構(gòu)設(shè)計(jì)的解決方案。因此,在.NET2.0中,可以輕易地使用來Membership(成員管理)構(gòu)建項(xiàng)目的用戶管理模塊。在開發(fā)的同時(shí),不但可以結(jié)合ASP.NET2.0提供的相關(guān)控件來實(shí)現(xiàn)用戶管理,也可以在自定義的控件中調(diào)用Membership提供的方法來進(jìn)行Web驗(yàn)證。48-1網(wǎng)站安全登錄技術(shù)2、Roles(角色管理)Roles(角色管理)與Membership相結(jié)合,構(gòu)成了ASP.NET2.0框架下用戶安全登錄的基礎(chǔ)。如果要讓一個(gè)網(wǎng)站的部分內(nèi)容只提供給擁有特定授權(quán)級別的用戶瀏覽,或者只讓網(wǎng)站管理員才能進(jìn)入后臺的特定管理模塊和拒絕其他沒有授權(quán)或授權(quán)級別不夠的用戶訪問,采用Roles(角色管理)與Membership相結(jié)合的處理辦法,將得到絕佳的效果。58.1.2成員管理的實(shí)現(xiàn)1、身份驗(yàn)證身份驗(yàn)證的4種方式:Windows(默認(rèn)):基于Windows的身份驗(yàn)證,適合于在企業(yè)內(nèi)部Intranet站點(diǎn)中使用。None:不進(jìn)行授權(quán)與身份驗(yàn)證;Form(常用):基于Cookie的身份認(rèn)證機(jī)制,可以自動(dòng)將未經(jīng)身份驗(yàn)證的用戶重定向到自定義的“登錄網(wǎng)頁”,只有登錄成功后,方可查看特定網(wǎng)頁內(nèi)容。Passport:通過Microsoft的集中身份驗(yàn)證服務(wù)執(zhí)行。這種認(rèn)證方式適合跨站應(yīng)用,即用戶只需一個(gè)用戶名及密碼就可以訪問任何成員站點(diǎn)。68.1.2成員管理的實(shí)現(xiàn)
在ASP.NET中,通過配置web.config文件來設(shè)置不同的身份驗(yàn)證方式。在web.config文件中,有一個(gè)<authentiCation>配置節(jié),用于設(shè)置身份驗(yàn)證方式。其格式為:〈system.web><authenticationmode=“Windows|Forms|Passport|None”/></system.web>78.1.2成員管理的實(shí)現(xiàn)
其中,通過mode屬性,配置系統(tǒng)的身份驗(yàn)證方式。例如下列程序,配置的身份驗(yàn)證方式是Windows身份驗(yàn)證方式:〈system.web><authenticationmode=“Windows”/></system.web>
也就是,在本機(jī)操作系統(tǒng)上成功登錄的某個(gè)用戶,也就自動(dòng)有了網(wǎng)站的相對應(yīng)用的訪問權(quán)限。例如下列程序,配置的身份驗(yàn)證方式Forms身份驗(yàn)證方式:〈system.web><authenticationmode=“Forms”/></system.web>
也就是,在本機(jī)操作系統(tǒng)上成功登錄的用戶,要訪問網(wǎng)站,還必須在網(wǎng)站上登錄,以獲取相關(guān)網(wǎng)站的相應(yīng)訪問權(quán)限。
82、Form身份驗(yàn)證的工作過程當(dāng)用戶要登錄時(shí),需在“登錄網(wǎng)頁”上填寫一個(gè)表單(一般填寫用戶名和密碼兩項(xiàng))并將表單提交到服務(wù)器。服務(wù)器在接受該請求并驗(yàn)證成功之后,將向用戶的本地計(jì)算機(jī)寫入一個(gè)記載身份驗(yàn)證信息的Cookie。在后續(xù)的瀏覽網(wǎng)頁中,瀏覽器每次向服務(wù)器發(fā)送請求時(shí)都會攜帶該Cookie,這樣用戶就可以保持住身份驗(yàn)證狀態(tài)。如圖8-1所示。92、Form身份驗(yàn)證的工作過程Bob希望查看網(wǎng)頁S1,但匿名用戶不可以訪問這個(gè)頁面,因此當(dāng)Bob試圖訪問網(wǎng)頁S1時(shí),服務(wù)器向?yàn)g覽器返回一要求登錄的頁面W1。
10Web服務(wù)器瀏覽器向Web服務(wù)器發(fā)出讀網(wǎng)頁S1的請求Internet瀏覽器Web服務(wù)器對未授權(quán)的用戶發(fā)送登錄網(wǎng)頁W1工作網(wǎng)頁S1登錄網(wǎng)頁W12、Form身份驗(yàn)證的工作過程
11Web服務(wù)器瀏覽器向Web服務(wù)器發(fā)出用戶名和密碼Internet瀏覽器Web服務(wù)器驗(yàn)證后,對和,向用戶發(fā)送網(wǎng)頁S1工作網(wǎng)頁S1工作網(wǎng)頁S2登錄網(wǎng)頁W12、Form身份驗(yàn)證的工作過程Bob現(xiàn)在可以正常瀏覽網(wǎng)頁了。現(xiàn)在Bob通過S1網(wǎng)頁上的一個(gè)鏈接查看S2網(wǎng)頁。在發(fā)送該請求時(shí),Bob的瀏覽器同時(shí)將Cookie的一個(gè)副本發(fā)送到服務(wù)器,讓服務(wù)器知道是Bob想要查看這個(gè)S2網(wǎng)頁。服務(wù)器通過Cookie知道了Bob的身份,所以按照請求將S2網(wǎng)頁發(fā)送給Bob。如圖8-3所示。122、Form身份驗(yàn)證的工作過程
13Web服務(wù)器瀏覽器從S1鏈接S2,同時(shí)發(fā)出CookieInternet瀏覽器Web服務(wù)器驗(yàn)證Cooike后,向用戶發(fā)送網(wǎng)頁S2工作網(wǎng)頁S1工作網(wǎng)頁S2登錄網(wǎng)頁W12、Form身份驗(yàn)證的工作過程如果Bob現(xiàn)在請求站點(diǎn)的首頁D,瀏覽器仍會將Cookie和對首頁D的請求一起發(fā)送到服務(wù)器,因此即使網(wǎng)頁不是受限的,Cookie仍會被傳遞回服務(wù)器。由于首頁D沒有受到限制,服務(wù)器不會考慮Cookie,直接忽略它并將首頁D發(fā)送給Bob。Bob接著返回B網(wǎng)頁。因?yàn)锽ob本機(jī)上的Cookie仍然是有效的,所以該Cookie仍會被送回服務(wù)器。服務(wù)器也仍然允許Bob瀏覽這個(gè)B網(wǎng)頁。148-1網(wǎng)站安全登錄技術(shù)Bob離開計(jì)算機(jī)臨時(shí)接了個(gè)電話。當(dāng)他重新回到計(jì)算機(jī)前時(shí),已經(jīng)超過了20分鐘,Bob現(xiàn)在希望再次瀏覽B網(wǎng)頁,但是他本機(jī)上的Cookie已經(jīng)過期了。服務(wù)器在接收B網(wǎng)頁請求時(shí)沒有得到Cookie,認(rèn)不出Bob了,所以拒絕這個(gè)請求,而將登錄網(wǎng)頁W1發(fā)回瀏覽器,Bob必須重新登錄。Cookie默認(rèn)有效時(shí)間是20分鐘,網(wǎng)管員與可修改這個(gè)服務(wù)器上的標(biāo)準(zhǔn)配置。153、用戶的授權(quán)限管理與角色管理授權(quán)是指通過身份驗(yàn)證的用戶是否應(yīng)授予對特定資源的訪問權(quán)限。在ASP.NET中,有兩種方式來授予對給定資源的訪問權(quán)限:文件授權(quán)和URL授權(quán)。(1)文件授權(quán)用于確定用戶是否應(yīng)該具有對文件的訪問權(quán)限。163、用戶的授權(quán)限管理與角色管理(2)URL授權(quán)是指允許或拒絕某個(gè)用戶或角色(用戶組)對特定目錄的訪問權(quán)限。在ASP.NET中,配置文件web.config的<authorization>配置節(jié)用于設(shè)置授權(quán)。<authorization》配置節(jié)的allow元素指定允許訪問Web應(yīng)用程序的用戶和角色的信息。deny元素指定禁止訪問Web應(yīng)用程序的用戶和角色的信息。173、用戶的授權(quán)限管理與角色管理〈system.web>〈authorization〉<fallowusers=“Tin”/><allowroles=“Admins”/><denyusers=“?”/>〈/authorization〉</system.web>
其中,users表示用戶,roles表示角色?!埃俊北硎灸涿脩?,“*”表示所有用戶。例子中對Tin用戶和Admins角色的成員授予訪問權(quán)限,對所有匿名用戶授予拒絕訪問權(quán)限。什么是角色?表示某一類用戶。角色不是單一用戶,所以,對角色授權(quán)就是對一類用戶授權(quán)。184、.net提供程序的配置
ASP.NET提供了Login、LoginName、LoginStatus、CreateUserWizard、ChangePassword和PasswordRecovery控件,用于實(shí)現(xiàn)網(wǎng)站中的用戶管理。其實(shí)真正進(jìn)行用戶管理的是ASP.NET提供的成員資格系統(tǒng)。登錄控件只不過是封裝成員資格的用戶界面。ASP.NET成員資格可以將用戶信息保存在指定的數(shù)據(jù)源中,默認(rèn)是SQLServerExpression。193、用戶的授權(quán)限管理與角色管理因此,第一步準(zhǔn)備工作是檢查保存用戶信息的數(shù)據(jù)源是否準(zhǔn)備妥當(dāng),方法如下。
在VisualStudio.NET集成開發(fā)環(huán)境中,單擊“網(wǎng)站”菜單中的“ASP.NET配置”菜單項(xiàng)。彈出“ASP.NETWeb應(yīng)用程序管理”窗口,如圖8-4、8-5、8-6所示。②單擊“提供程序”,切換到“提供程序”向?qū)ы撁?。③單擊“為所有站點(diǎn)管理數(shù)據(jù)選擇同一提供程序”,切換到下一頁面。④單擊“測試”。⑤如果出現(xiàn)“已成功建立到數(shù)據(jù)庫的連接?!保瑒t說明已經(jīng)建立到SQLServerExpression的連接,可以使用其中的數(shù)據(jù)庫表保存用戶信息。單擊“確定”按鈕,結(jié)束。203、用戶的授權(quán)限管理與角色管理
213、用戶的授權(quán)限管理與角色管理
223、用戶的授權(quán)限管理與角色管理
235、Web用戶的分類網(wǎng)站的用戶分為兩大種:匿名用戶,即非登錄用戶,只能查看網(wǎng)站中的公共網(wǎng)頁。登錄用戶,不但可以查看公共網(wǎng)頁,還可以訪問受限的網(wǎng)頁。實(shí)際工作中,更多的情況是,登錄用戶的類別多于一個(gè)。解決的方法就是定義若干用戶組,各組擁有不同權(quán)限,然后再將用戶賬戶添加到恰當(dāng)?shù)慕M中,則此用戶就擁有了該組定義的權(quán)限。245、Web用戶注冊表案例一個(gè)簡單的網(wǎng)站用戶分類表如表8-1所示。255、Web用戶注冊表案例
26用戶名密碼角色說明張強(qiáng)134567!網(wǎng)管員可查看所有網(wǎng)頁李紅234_671用戶只能查指定網(wǎng)頁朱軍334_671網(wǎng)管員可查看所有網(wǎng)頁向李434_671用戶只能查指定網(wǎng)頁李向前534_671用戶只能查指定網(wǎng)頁5、Web用戶注冊表案例
用戶的驗(yàn)證實(shí)質(zhì)上是一個(gè)查詢過程。當(dāng)用戶進(jìn)入登錄頁面時(shí),先要求用戶輸入自己的姓名和密碼,再到用戶注冊表中去查詢。如果在表中找到了可以匹配的記錄時(shí),說明該用戶可以登錄,然后取出用戶對應(yīng)的角色字段,根據(jù)分配給角色的權(quán)限讓用戶轉(zhuǎn)入相應(yīng)的網(wǎng)頁。276、網(wǎng)站安全管理的自動(dòng)化ASP.NET2.0中,對于基于角色的網(wǎng)站安全管理自動(dòng)化程度很高。系統(tǒng)默認(rèn)自動(dòng)產(chǎn)生比表8-1更加完善、規(guī)范的SQLServer2005數(shù)據(jù)庫,保存在網(wǎng)站“App_Data”專用目錄下??梢越柚嚓P(guān)工具及修改相關(guān)配置,將基于角色的網(wǎng)站安全管理建立在SQLServer2005、Access或其他數(shù)據(jù)庫上;可以利用VisualStudio2008中的“ASP.NET網(wǎng)站管理工具”對用戶和角色進(jìn)行圖形界面管理。提供了“登錄”相關(guān)的7個(gè)控件,可以方便構(gòu)建用戶認(rèn)證系統(tǒng),例如“登錄”、“注冊”、“恢復(fù)密碼”等。288.2網(wǎng)站安全登錄案例
一、案例說明
1、目的2、分類用戶表3、頁面組成結(jié)構(gòu)二、建立Web網(wǎng)站1、建立一個(gè)工程文件夾2、啟動(dòng)VS,選擇新建網(wǎng)站,添加一個(gè)名為Default.aspx的頁面3、切換到“設(shè)計(jì)”視圖4、選擇div控件,生成一個(gè)層5、從工具箱的標(biāo)準(zhǔn)選項(xiàng)卡中選擇linkbutton控件6、添加一個(gè)名為login.aspx的頁面并在頁面上加入login控件7、在“解決方案資源管理器”窗中,選添加文件夾和文件ad.aspx.8、雙擊“user1入口”,輸入相關(guān)命令三、配置數(shù)據(jù)庫1、配置驗(yàn)證類型2、用戶管理3、配置用戶的角色4、配置用戶的訪問規(guī)則5、Web.config文件內(nèi)容分析298.2網(wǎng)站安全登錄案例
一、案例說明1、目的
此案例建立一個(gè)Web網(wǎng)站,支持基本角色的授權(quán)訪問策略。應(yīng)用.net提供的安全登錄管理程序,自動(dòng)生成管理系統(tǒng),開發(fā)者基本不用編寫代碼。30基本配置說明2、表8-2分類用戶表角色與用戶的關(guān)系是什么?31用戶名密碼角色說明張剛134_567User1只可查看網(wǎng)頁ad.aspx劉進(jìn)234_567User1只可查看網(wǎng)頁ad.aspx朱軍334_567User2只可查看網(wǎng)頁us.aspx8.2網(wǎng)站安全登錄案例3、頁面組成結(jié)構(gòu)32基本配置說明4、頁面文件結(jié)構(gòu)表33每一個(gè)文件夾內(nèi),都生成了一相應(yīng)的配置文件,保護(hù)文件不被非法用戶訪問大
<authorization><allow
roles="user1"/><deny
users="*"/></authorization><authorization><allow
roles="user2"/><deny
users="*"/></authorization>系統(tǒng)生成的sql數(shù)據(jù)庫,用于用戶的管理,
<system.web><roleManager
enabled="true"/><authentication
mode="Forms"/><compilation
debug="true"
targetFramework="4.0"/></system.web>8.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(1)建立一個(gè)工程文件夾code8-F-1。(2)啟動(dòng)VS,選擇新建網(wǎng)站。選擇建立空網(wǎng)站。添加一個(gè)名為Default.aspx的頁面。如圖8-8所示。348.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(3)單擊“設(shè)計(jì)”按鈕切換到“設(shè)計(jì)”視圖。(4)從工具箱的HTML選項(xiàng)卡中選擇div控件,并把它拖曳到Web頁面上,生成一個(gè)層。如圖8-9所示。358.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(5)選中層,在“格式”菜單中選擇“位置”菜單項(xiàng),彈出“定位”對話框,在“定位樣式”中選中“絕對”,使該層的位置變?yōu)榻^對定位。拖該層到指定位置。如圖8-10所示。368.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(6)從工具箱的標(biāo)準(zhǔn)選項(xiàng)卡中選擇linkbutton控件,并把它拖到層中。
在“格式”菜單中選擇“位置”菜單項(xiàng),彈出“定位”對話框,在“定位樣式”中選中“相對”,拖動(dòng)該控件到指定位置。如圖8-12所示。378.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(7)選中l(wèi)inkbutton控件,擊右鍵,選擇屬性菜單,將其Text履性改為“登錄”。如8-13所示。388.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(8)與上述操作相同,分別在設(shè)計(jì)欄再拖入兩個(gè)linkbutton控件,并將其改名為user1入口和user2入口,如圖8-14所示。398.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(9)添加一個(gè)名為login.aspx的頁面。在頁面上加入login控件,如圖8-15所示。408.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(10)在“解決方案資源管理器”窗中中,選中“H:\code8-F-1”,添加文件夾admin并在其中添加網(wǎng)頁文件ad.aspx.選中“H:\code8-F-1”,添加文件夾use并在其中添加網(wǎng)頁文件us.aspx,如圖8-16所示。418.2網(wǎng)站安全登錄案例二、建立Web網(wǎng)站(11)回到首頁,雙擊“user1入口”,輸入一條指令。雙擊“user2入口”,輸入一條指令。雙擊“登錄”,輸入一條指令。如圖8-17所示。428.2網(wǎng)站安全登錄案例三、配置數(shù)據(jù)庫1、配置驗(yàn)證類型
如下圖4個(gè)步驟,就可完成驗(yàn)證類型的配置,如圖8-21所示。配置完成后,查看主系統(tǒng)的Web.config文件,內(nèi)容如下所示。43三、配置數(shù)據(jù)庫44三、配置數(shù)據(jù)庫1、配置驗(yàn)證類型45三、配置數(shù)據(jù)庫1、配置驗(yàn)證類型配置完成后,查看主系統(tǒng)的Web.config文件,內(nèi)容如下所示。<?xmlversion="1.0"?><configuration>
<system.web>
<authenticationmode="Forms"/>
<compilationdebug="true"targetFramework="4.0"/>
</system.web></configuration>
在默認(rèn)情況下,ASP.NET用戶信息存儲在ASPNETDB.MDF文件中,該文件默認(rèn)為存儲在網(wǎng)站的A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 嵌入式技術(shù)的商業(yè)價(jià)值提升試題及答案
- 2025年C語言模擬卷試題及答案
- 計(jì)算機(jī)四級考試心理調(diào)適試題及答案
- 用案例解析測試中普遍問題試題及答案
- C語言復(fù)習(xí)資源2025年考試試題及答案
- 經(jīng)濟(jì)法備考策略與心得試題及答案
- JAVA在線教育平臺開發(fā)的編程考察試題及答案
- 智能童車出售合同協(xié)議書
- C語言編程工具的試題及答案
- C語言和移動(dòng)開發(fā)的關(guān)系探討試題及答案
- 徒手整形 培訓(xùn)課件
- 市場營銷學(xué)電子教案
- 《內(nèi)蒙古乳制品出口貿(mào)易發(fā)展現(xiàn)狀、問題及完善對策研究》10000字
- 研究生開題報(bào)告評審表
- 統(tǒng)編版語文二年級下冊《黃帝的傳說》教學(xué)課件
- 《網(wǎng)絡(luò)安全與個(gè)人信息保護(hù)》主題班會課件
- 建筑集團(tuán)公司商務(wù)管理手冊(投標(biāo)、合同、采購)分冊
- 蘇教版二年級下冊《磁鐵的磁力》課件
- 幼兒園課件小小銀行家
- 美的空調(diào)制造工藝手冊
- 會議實(shí)務(wù)之收集與會人員對會議的意見和建議
評論
0/150
提交評論