偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

ASP.NET中無(wú)Cookie會(huì)話的優(yōu)點(diǎn)與缺點(diǎn)

開(kāi)發(fā) 后端
本文總結(jié)了無(wú)Cookie會(huì)話的優(yōu)點(diǎn)與缺點(diǎn)。一個(gè)經(jīng)常提出的反對(duì) Cookie 的理由是安全性。這是一個(gè)值得予以更多關(guān)注的要點(diǎn)。

無(wú)Cookie會(huì)話的優(yōu)點(diǎn)

在 ASP.NET 中,會(huì)話管理和表單身份驗(yàn)證是唯一的兩個(gè)在后臺(tái)使用 Cookie 的系統(tǒng)功能。通過(guò)無(wú) Cookie 會(huì)話,您現(xiàn)在可以部署無(wú)論用戶的有關(guān) Cookie 的首選項(xiàng)如何都能正常工作的有狀態(tài)應(yīng)用程序。然而,就 ASP.NET 1.x 而言,仍然需要使用 Cookie 來(lái)實(shí)現(xiàn)表單身份驗(yàn)證。好消息是,在 ASP.NET 2.0 中,表單身份驗(yàn)證可以選擇以無(wú) Cookie 方式工作。

另一個(gè)經(jīng)常提出的反對(duì) Cookie 的理由是安全性。這是一個(gè)值得予以更多關(guān)注的要點(diǎn)。

Cookies 是無(wú)活動(dòng)能力的文本文件,因此,這些文件可能被攻擊者替換或損壞 — 只要他們獲得了對(duì)計(jì)算機(jī)的訪問(wèn)。真正的威脅并不在于 Cookie 可以在客戶端計(jì)算機(jī)上安裝什么,而是在于它們可以向目標(biāo)站點(diǎn)上載什么。Cookie 不是程序,并且永遠(yuǎn)不會(huì)像程序那樣運(yùn)行;然而,您計(jì)算機(jī)上安裝的其他軟件可以使用對(duì) Cookie 的瀏覽器內(nèi)置支持來(lái)遠(yuǎn)程從事破壞活動(dòng)。

此外,Cookie 要受到被盜竊的風(fēng)險(xiǎn)。一旦失竊,包含有價(jià)值的和私人的信息的 Cookie 就可能將其內(nèi)容泄露給惡意攻擊者,并且為其他類型的 Web 攻擊提供便利??傊?,通過(guò)使用 Cookie,您將自己暴露在本可以消除的風(fēng)險(xiǎn)之中。這是真的嗎?

無(wú)Cookie會(huì)話的缺點(diǎn)

讓我們從另一個(gè)角度來(lái)考察安全性。您是否曾經(jīng)聽(tīng)說(shuō)過(guò)會(huì)話劫持?如果沒(méi)有,則請(qǐng)閱讀一下 TechNet Magazine 文章 Theft On The Web: Prevent Session Hijacking。簡(jiǎn)單說(shuō)來(lái),當(dāng)攻擊者獲得對(duì)特定用戶的會(huì)話狀態(tài)的訪問(wèn)時(shí),將發(fā)生會(huì)話劫持。其實(shí)質(zhì)是,攻擊者竊取有效的會(huì)話 ID,并且使用它侵入系統(tǒng)和窺探數(shù)據(jù)。獲取有效會(huì)話 ID 的一種常見(jiàn)方式是竊取有效的會(huì)話 Cookie。鑒于此,如果您認(rèn)為無(wú) Cookie 會(huì)話保護(hù)了您應(yīng)用程序的安全,那您就完全錯(cuò)了。實(shí)際上,對(duì)于無(wú) Cookie 會(huì)話,會(huì)話 ID 直接顯示在地址欄中!請(qǐng)嘗試下列操作:

連接到使用無(wú)Cookie會(huì)話的 Web 站點(diǎn)(例如,MapPoint)并獲得一個(gè)映射。此時(shí),該地址存儲(chǔ)在會(huì)話狀態(tài)中。

◆抓取 URL(直至頁(yè)名稱)。不要包括查詢字符串,但請(qǐng)確保該 URL 包括會(huì)話 ID。

◆將該 URL 保存到文件中,并將該文件復(fù)制/發(fā)送到另一臺(tái)計(jì)算機(jī)。

◆在第二臺(tái)計(jì)算機(jī)上打開(kāi)該文件,并將該 URL 粘貼到新瀏覽器實(shí)例中。

◆只要會(huì)話超時(shí)仍然有效,就會(huì)顯示同一個(gè)映射。

◆通過(guò)無(wú)Cookie會(huì)話,可以比以往任何時(shí)候都更加容易地竊取會(huì)話 ID。

從道德的觀點(diǎn)來(lái)看,竊取會(huì)話是應(yīng)該受到譴責(zé)的操作,我相信大家會(huì)一致認(rèn)同這一點(diǎn)。但它是否也是有害的?這取決于會(huì)話狀態(tài)中實(shí)際存儲(chǔ)的內(nèi)容。竊取會(huì)話 ID 本身并不會(huì)執(zhí)行超出代碼控制范圍的操作。但是,它可能向未經(jīng)授權(quán)的用戶泄露私有數(shù)據(jù),并且使一些壞家伙能夠執(zhí)行未經(jīng)授權(quán)的操作。有關(guān)如何在 ASP.NET 應(yīng)用程序中阻止會(huì)話劫持的提示,請(qǐng)閱讀 Wicked Code: Foiling Session Hijacking Attempts。(而且,它并不依賴于無(wú) Cookie 會(huì)話?。?

使用無(wú)Cookie會(huì)話還會(huì)引起與鏈接有關(guān)的問(wèn)題。例如,您不能在 ASP.NET 頁(yè)中具有絕對(duì)的、完全限定的鏈接。如果您這樣做,那么源自該超鏈接的每個(gè)請(qǐng)求都將被視為新會(huì)話的一部分。無(wú) Cookie 會(huì)話要求您總是使用相對(duì) URL,就像在 ASP.NET 回發(fā)中一樣。僅當(dāng)您可以將會(huì)話 ID 嵌入到 URL 中時(shí),您才可以使用完全限定的 URL。但是,既然會(huì)話 ID 是在運(yùn)行時(shí)生成的,那么您如何才能做到這一點(diǎn)呢?

下面的代碼中斷了該會(huì)話:

  1. < a runat="server" href="/test/page.aspx">Click< /a> 

要使用絕對(duì) URL,可以借助于一個(gè)小技巧,即,使用 HttpResponse 類上的 ApplyAppPathModifier 方法:

  1. < a runat="server" href=< % =Response.ApplyAppPathModifier("/test/page.aspx")%> >Click< /a>   

ApplyAppPathModifier 方法采用一個(gè)表示 URL 的字符串作為參數(shù),并且返回一個(gè)嵌入了會(huì)話信息的絕對(duì) URL。例如,當(dāng)您需要從 HTTP 頁(yè)重定向到 HTTPS 頁(yè)時(shí),該技巧尤其有用。最后,請(qǐng)?zhí)貏e注意,每當(dāng)您在同一個(gè)瀏覽器內(nèi)部鍵入指向某個(gè)站點(diǎn)的路徑時(shí),您都將丟失無(wú) Cookie 會(huì)話的狀態(tài)。還要請(qǐng)您注意的是,對(duì)于移動(dòng)應(yīng)用程序,如果設(shè)備無(wú)法處理專門(mén)格式化的 URL,則無(wú) Cookie 會(huì)話可能會(huì)出現(xiàn)問(wèn)題。

【編輯推薦】

  1. 無(wú)Cookie會(huì)話的實(shí)現(xiàn)
  2. ASP.NET Cookie:不是問(wèn)題的問(wèn)題
  3. .NET框架中的XML:XmlSerializer的內(nèi)部原理
  4. .NET框架中的XML基礎(chǔ)類:xsd.exe
  5. ASP.NET 2.0頁(yè)面狀態(tài)持續(xù):ViewState與控件
責(zé)任編輯:yangsai 來(lái)源: MSDN
相關(guān)推薦

2009-07-24 15:47:35

ASP.NET與ASP

2009-07-21 11:11:44

刪除CookieASP.NET

2009-08-05 15:50:13

ASP.NET優(yōu)點(diǎn)

2009-07-30 13:33:55

ASP.NET中的co

2009-07-27 10:22:16

ASP.NET中Coo

2009-07-24 17:04:57

ASP.NET中Coo

2009-08-06 16:02:05

無(wú)Cookie會(huì)話

2009-08-06 15:56:40

ASP.NET Coo

2009-08-05 18:30:36

Session和CooASP.NET表單

2012-04-13 10:05:24

ASP.NET

2009-07-29 17:29:46

ASP與ASP.NET

2009-07-24 10:10:22

ASP.NET

2009-07-24 16:17:42

WebRequestEASP.NET

2009-07-28 17:29:14

ASP.NET優(yōu)點(diǎn)

2009-07-28 12:52:50

ASP.NET coo

2009-06-09 11:37:51

ViewStateViewDataASP.NET

2009-12-02 09:07:45

ASP.NET 4.0

2009-07-27 13:01:28

TreeViewASP.NET

2009-07-31 09:58:20

URL映射ASP.NET

2009-08-04 18:05:37

動(dòng)態(tài)編譯ASP.NET
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)