成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET中無Cookie會話的優點與缺點

開發 后端
本文總結了無Cookie會話的優點與缺點。一個經常提出的反對 Cookie 的理由是安全性。這是一個值得予以更多關注的要點。

無Cookie會話的優點

在 ASP.NET 中,會話管理和表單身份驗證是唯一的兩個在后臺使用 Cookie 的系統功能。通過無 Cookie 會話,您現在可以部署無論用戶的有關 Cookie 的首選項如何都能正常工作的有狀態應用程序。然而,就 ASP.NET 1.x 而言,仍然需要使用 Cookie 來實現表單身份驗證。好消息是,在 ASP.NET 2.0 中,表單身份驗證可以選擇以無 Cookie 方式工作。

另一個經常提出的反對 Cookie 的理由是安全性。這是一個值得予以更多關注的要點。

Cookies 是無活動能力的文本文件,因此,這些文件可能被攻擊者替換或損壞 — 只要他們獲得了對計算機的訪問。真正的威脅并不在于 Cookie 可以在客戶端計算機上安裝什么,而是在于它們可以向目標站點上載什么。Cookie 不是程序,并且永遠不會像程序那樣運行;然而,您計算機上安裝的其他軟件可以使用對 Cookie 的瀏覽器內置支持來遠程從事破壞活動。

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

無Cookie會話的缺點

讓我們從另一個角度來考察安全性。您是否曾經聽說過會話劫持?如果沒有,則請閱讀一下 TechNet Magazine 文章 Theft On The Web: Prevent Session Hijacking。簡單說來,當攻擊者獲得對特定用戶的會話狀態的訪問時,將發生會話劫持。其實質是,攻擊者竊取有效的會話 ID,并且使用它侵入系統和窺探數據。獲取有效會話 ID 的一種常見方式是竊取有效的會話 Cookie。鑒于此,如果您認為無 Cookie 會話保護了您應用程序的安全,那您就完全錯了。實際上,對于無 Cookie 會話,會話 ID 直接顯示在地址欄中!請嘗試下列操作:

連接到使用無Cookie會話的 Web 站點(例如,MapPoint)并獲得一個映射。此時,該地址存儲在會話狀態中。

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

◆將該 URL 保存到文件中,并將該文件復制/發送到另一臺計算機。

◆在第二臺計算機上打開該文件,并將該 URL 粘貼到新瀏覽器實例中。

◆只要會話超時仍然有效,就會顯示同一個映射。

◆通過無Cookie會話,可以比以往任何時候都更加容易地竊取會話 ID。

從道德的觀點來看,竊取會話是應該受到譴責的操作,我相信大家會一致認同這一點。但它是否也是有害的?這取決于會話狀態中實際存儲的內容。竊取會話 ID 本身并不會執行超出代碼控制范圍的操作。但是,它可能向未經授權的用戶泄露私有數據,并且使一些壞家伙能夠執行未經授權的操作。有關如何在 ASP.NET 應用程序中阻止會話劫持的提示,請閱讀 Wicked Code: Foiling Session Hijacking Attempts。(而且,它并不依賴于無 Cookie 會話!)

使用無Cookie會話還會引起與鏈接有關的問題。例如,您不能在 ASP.NET 頁中具有絕對的、完全限定的鏈接。如果您這樣做,那么源自該超鏈接的每個請求都將被視為新會話的一部分。無 Cookie 會話要求您總是使用相對 URL,就像在 ASP.NET 回發中一樣。僅當您可以將會話 ID 嵌入到 URL 中時,您才可以使用完全限定的 URL。但是,既然會話 ID 是在運行時生成的,那么您如何才能做到這一點呢?

下面的代碼中斷了該會話:

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

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

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

ApplyAppPathModifier 方法采用一個表示 URL 的字符串作為參數,并且返回一個嵌入了會話信息的絕對 URL。例如,當您需要從 HTTP 頁重定向到 HTTPS 頁時,該技巧尤其有用。最后,請特別注意,每當您在同一個瀏覽器內部鍵入指向某個站點的路徑時,您都將丟失無 Cookie 會話的狀態。還要請您注意的是,對于移動應用程序,如果設備無法處理專門格式化的 URL,則無 Cookie 會話可能會出現問題。

【編輯推薦】

  1. 無Cookie會話的實現
  2. ASP.NET Cookie:不是問題的問題
  3. .NET框架中的XML:XmlSerializer的內部原理
  4. .NET框架中的XML基礎類:xsd.exe
  5. ASP.NET 2.0頁面狀態持續:ViewState與控件
責任編輯:yangsai 來源: MSDN
相關推薦

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優點

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 15:56:40

ASP.NET Coo

2009-08-05 18:30:36

Session和CooASP.NET表單

2009-08-06 16:02:05

無Cookie會話

2012-04-13 10:05:24

ASP.NET

2009-07-29 17:29:46

ASP與ASP.NET

2009-07-28 17:29:14

ASP.NET優點

2009-07-24 10:10:22

ASP.NET

2009-07-24 16:17:42

WebRequestEASP.NET

2009-12-02 09:07:45

ASP.NET 4.0

2009-07-28 12:52:50

ASP.NET coo

2009-06-09 11:37:51

ViewStateViewDataASP.NET

2009-07-22 17:45:35

ASP.NET教程

2009-07-27 13:01:28

TreeViewASP.NET

2009-07-31 09:58:20

URL映射ASP.NET
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩aⅴ视频 | 国产91亚洲精品一区二区三区 | 精品国产91乱码一区二区三区 | 日韩在线精品视频 | 操视频网站| 337p日韩 | 欧美日韩国产一区 | 99亚洲精品 | 可以在线看的黄色网址 | 国产精品美女在线观看 | 国产羞羞视频在线观看 | 国产真实乱对白精彩久久小说 | 一区二区三区四区在线视频 | 精品av| 国产精品视频 | 精品久久网 | 视频一区在线观看 | 欧美日韩在线一区 | 国产精品无码久久久久 | 亚洲综合大片69999 | 韩国av电影网 | 日日操日日干 | 久精品久久 | 免费视频一区 | 日韩欧美一区二区在线播放 | 欧美精品91 | 免费在线观看av | 久久久久资源 | 国产精品久久国产精品 | 免费成年网站 | 久久精品国产一区二区 | 欧美在线一区二区三区 | 国产精品免费一区二区 | 九九热这里| 精品三区 | 国产区在线 | 激情五月综合 | 国产精品久久久久久久久免费 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 日韩av免费在线观看 | 黄色一级大片视频 |