Session捉片、Cookies、Token

一汞舱、Session

Session是什么伍纫?

Session實(shí)際上是一個(gè)特定的時(shí)間概念,Web中的Session指的就是用戶在瀏覽某個(gè)網(wǎng)站時(shí)昂芜,從進(jìn)入網(wǎng)站到關(guān)閉這個(gè)網(wǎng)站所經(jīng)過(guò)的這段時(shí)間莹规,也就是用戶瀏覽這個(gè)網(wǎng)站所花費(fèi)的時(shí)間。

Session代表服務(wù)器與瀏覽器的一次會(huì)話過(guò)程泌神,這個(gè)過(guò)程是連續(xù)的良漱,也可以時(shí)斷時(shí)續(xù)的

Session的創(chuàng)建

當(dāng)JSP頁(yè)面沒(méi)有顯式禁止session的時(shí)候舞虱,在打開(kāi)瀏覽器第一次請(qǐng)求該jsp的時(shí)候,服務(wù)器會(huì)自動(dòng)為其創(chuàng)建一個(gè)session母市,并賦予其一個(gè)sessionID矾兜,發(fā)送給客戶端的瀏覽器。以后客戶端接著請(qǐng)求本應(yīng)用中其他資源的時(shí)候患久,會(huì)自動(dòng)在請(qǐng)求頭上添加:

Cookie:JSESSIONID=客戶端第一次拿到的session ID

這樣椅寺,服務(wù)器端在接到請(qǐng)求時(shí)候,就會(huì)收到session ID蒋失,并根據(jù)ID在內(nèi)存中找到之前創(chuàng)建的session對(duì)象返帕,提供給請(qǐng)求使用。

Session的刪除

(1)Session超時(shí):超時(shí)指的是連續(xù)一定時(shí)間服務(wù)器沒(méi)有收到該Session所對(duì)應(yīng)客戶端的請(qǐng)求高镐,并且這個(gè)時(shí)間超過(guò)了服務(wù)器設(shè)置的Session超時(shí)的最大時(shí)間

(2)程序調(diào)用HttpSession.invalidate()

(3)服務(wù)器關(guān)閉或服務(wù)停止

Session的存放

服務(wù)器端的內(nèi)存中溉旋。不過(guò)session可以通過(guò)特殊的方式做持久化管理。

session是一個(gè)容器嫉髓,可以存放會(huì)話過(guò)程中的任何對(duì)象。


二邑闲、Cookies

Cookies要解決的問(wèn)題

有些開(kāi)發(fā)者借助請(qǐng)求中的ip頭部來(lái)唯一標(biāo)識(shí)發(fā)出此次請(qǐng)求的客戶端算行,但是這種方式存在很多問(wèn)題。因?yàn)樯凰剩行┯脩羰峭ㄟ^(guò)代理來(lái)訪問(wèn)的州邢,比如用戶A通過(guò)代理B連接網(wǎng)站www.example.com, 服務(wù)器端獲取的ip信息是代理B分配給A的ip地址,如果用戶這時(shí)斷開(kāi)代理褪子,然后再次連接代理的話量淌,它的代理ip地址又再次改變,也就說(shuō)一個(gè)用戶對(duì)應(yīng)了多個(gè)ip地址嫌褪,這種情況下呀枢,服務(wù)器端根據(jù)ip地址來(lái)標(biāo)識(shí)用戶的話,會(huì)認(rèn)為請(qǐng)求是來(lái)自不同的用戶笼痛,事實(shí)上是同一個(gè)用戶裙秋。 還用另外一種情況就是,比如很多用戶是在同一個(gè)局域網(wǎng)里通過(guò)路由連接互聯(lián)網(wǎng)缨伊,然后都訪問(wèn)www.example.com的話摘刑,由于這些用戶共享同一個(gè)外網(wǎng)ip地址,這會(huì)導(dǎo)致服務(wù)器認(rèn)為這些用戶是同一個(gè)用戶發(fā)出的請(qǐng)求刻坊,因?yàn)樗麄兪莵?lái)自同一個(gè)ip地址的訪問(wèn)枷恕。

保持應(yīng)用程序狀態(tài)的第一步就是要知道如何來(lái)唯一地標(biāo)識(shí)每個(gè)客戶端。因?yàn)橹挥性趆ttp中請(qǐng)求中攜帶的信息才能用來(lái)標(biāo)識(shí)客戶端谭胚,所以在請(qǐng)求中必須包含某種可以用來(lái)標(biāo)識(shí)客戶端唯一身份的信息徐块。Cookie設(shè)計(jì)出來(lái)就是用來(lái)解決這一問(wèn)題的未玻。

Token

既然我們可以檢查User-Agent這個(gè)頭部來(lái)加強(qiáng)安全性,那么不妨再利用其它的一些頭部信息蛹锰,把他們組合起來(lái)生成一個(gè)加密的token深胳,并且讓客戶端在后續(xù)的請(qǐng)求中攜帶這個(gè)token!這樣的話,攻擊者基本上不可能猜測(cè)出這樣一個(gè)token是怎么生成出來(lái)的铜犬。這好比你用信用卡在超市付款舞终,一個(gè)你必須有信用卡(好比session id),另外你也必須輸入一個(gè)支付密碼(好比token),這有這兩者都符合的情況下癣猾,你才能成功進(jìn)入賬號(hào)付款敛劝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市纷宇,隨后出現(xiàn)的幾起案子夸盟,更是在濱河造成了極大的恐慌,老刑警劉巖像捶,帶你破解...
    沈念sama閱讀 206,378評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件上陕,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拓春,警方通過(guò)查閱死者的電腦和手機(jī)释簿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)硼莽,“玉大人庶溶,你說(shuō)我怎么就攤上這事《遥” “怎么了偏螺?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,702評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)匆光。 經(jīng)常有香客問(wèn)我套像,道長(zhǎng),這世上最難降的妖魔是什么殴穴? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,259評(píng)論 1 279
  • 正文 為了忘掉前任凉夯,我火速辦了婚禮,結(jié)果婚禮上采幌,老公的妹妹穿的比我還像新娘劲够。我一直安慰自己,他們只是感情好休傍,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布征绎。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪人柿。 梳的紋絲不亂的頭發(fā)上柴墩,一...
    開(kāi)封第一講書(shū)人閱讀 49,036評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音凫岖,去河邊找鬼江咳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛哥放,可吹牛的內(nèi)容都是我干的歼指。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼甥雕,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼踩身!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起社露,我...
    開(kāi)封第一講書(shū)人閱讀 36,979評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤挟阻,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后峭弟,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體附鸽,經(jīng)...
    沈念sama閱讀 43,469評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評(píng)論 2 323
  • 正文 我和宋清朗相戀三年瞒瘸,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拒炎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,059評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡挨务,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出玉组,到底是詐尸還是另有隱情谎柄,我是刑警寧澤,帶...
    沈念sama閱讀 33,703評(píng)論 4 323
  • 正文 年R本政府宣布惯雳,位于F島的核電站朝巫,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏石景。R本人自食惡果不足惜劈猿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望潮孽。 院中可真熱鬧揪荣,春花似錦、人聲如沸往史。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,262評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)椎例。三九已至挨决,卻和暖如春请祖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背脖祈。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工肆捕, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人盖高。 一個(gè)月前我還...
    沈念sama閱讀 45,501評(píng)論 2 354
  • 正文 我出身青樓慎陵,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親或舞。 傳聞我的和親對(duì)象是個(gè)殘疾皇子荆姆,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)映凳,斷路器胆筒,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • 一、概念(載錄于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434閱讀 8,328評(píng)論 6 152
  • http://www.91ri.org/tag/fuzz-bug 通常情況下诈豌,有三種方法被廣泛用來(lái)防御CSRF攻擊...
    jdyzm閱讀 4,158評(píng)論 0 5
  • Http協(xié)議詳解 標(biāo)簽(空格分隔): Linux 聲明:本片文章非原創(chuàng)仆救,內(nèi)容來(lái)源于博客園作者M(jìn)IN飛翔的HTTP協(xié)...
    Sivin閱讀 5,203評(píng)論 3 82
  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 10,869評(píng)論 6 13