JAVA技(jì)術(shù)
  當前位置:首頁 > 技(jì)術(shù)支持 > JAVA技(jì)術(shù)
如(rú)何利用(yòng)responsφβe.addHeader()方法設置cookie
發布時(shí)間(jiān):2017-09-25 浏覽:3521次
  
将cookie設置成HttpOnly是(shì)為(wèi)了(€♣™le)防止XSS攻擊,竊取cookie內(nèi)容,這(zhè)樣就(ji'®ù)增加了(le)cookie的(de)安全性,即便是(shì)這(z∞ ₩hè)樣,也(yě)不(bù)要(yào)将重要(yào)信息存入co©Ωβokie。

 如(rú)何在Java中設置c↕§ookie是(shì)HttpOnly呢(n≤≠$e)?
Servlet 2.5 API 不(bù)支持 cookie設置H‍≥™∞ttpOnly
http://docs.oracle.com/cd/E1780‌‍¥Ω2_01/products/products/serv®•​let/2.5/docs/servlet-2_5-mr2/

建議(yì)升級Tomcat7.0,它已經實現(xiàn)了(le)♦&Servlet3.0
http://tomcat.apache.org/tomcat-7.0-d✔ φoc/servletapi/javax/servlet/h→δ∑ttp/Cookie.html

但(dàn)一(yī)般不(bù)是(shì)能(néng)随意↔​升級系統的(de)。
 那(nà)就(jiù)介紹另外(wài)一(yī)種辦法:♣±‌
 利用(yòng)HttpResponse的(de)add€δ<Header方法,設置Set-Cookie的(de)值
cookie字符串的(de)格式:key=valu←¥α☆e; Expires=date(或Max-Age=毫秒(miα↔₩ǎo)數(shù)); Path=path; Domain=domai★↓∏n; Secure; HttpOnly

//設置cookie
response.addHeader("Set-Cookie", "u≤♦±♠id=112; Path=/; HttpOnly");

//設置多(duō)個(gè)cooki×§'e
response.addHeader("Set-Cook&™π¶ie", "uid=112; Path=/; Hβγ>ttpOnly");
response.addHeader("Set-Cookieγ≥≤", "timeout=30; Path=/test; Http""Only");

//設置https的(de)cookie
response.addHeader("Set-Cookie", "uid=1₹↓12; Path=/; Secure; HttpOnly");

目前主流的(de)WEB服務器(qì),均應有(yǒu)設置coo©≈→kie的(de)HttpOnly的(de)方♠₽εφ法。一(yī)般默認HttpOnly沒有(yǒu)開(k★>āi)啓,隻需開(kāi)啓即可(kě)。
下(xià)面以Resin服務器(qì)為(wèi)例,設✘∑♣置cookie的(de)HttpOnly參數(shù)的(dσ♦e)方法為(wèi):
1、Resin3.1.X服務器(qì),用(yòng)文(↑"✔wén)本編輯器(qì)打開(kāi)resin.con∏α₹f,找到(dào):
<!--
         - Fo₽π®r security, set the HttpOnly flag β&§♣in cookies. 
        -≠'↔§ <cookie-http-only/>≈→
--> 
可(kě)以看(kàn)出cookie-http-only被£★引去(qù),打開(kāi)即可(kě)。
2、Resin4.0.X,用(yòng)文(wén)本編輯器(qì)打開(k ↔×āi)resin.xml
參照(zhào)如(rú)下(xià)格式,添加cooki§¶₩e-http-only到(dào)你(nǐ)的(de​&)虛拟主機(jī)配置中即可(kě)(軟件(jiàn∞∑<)默認配置文(wén)檔沒有(yǒu)<cookie-http-only>參數(shù),自(zì)行(xíng)增加即可(kě),具體(tǐ)參考官©₹>方文(wén)檔):
<resin xmlns="http://caucho.com/≈δφ£ns/resin"> 
<cluster id=""> 
 <host id="www.foo.com">
 <web-app id="" r∞£&oot-directory="/var/resin/foo">&nbsδ♥ p;
 <cookie-http-only>trδλue</cookie-http-only>
 <web-app id="">
 </host> 
...... 
</cluster> 
</resin>

 
 
    
 
 
版權所有(yǒu) © 2005-20↑÷↓24 南昌億雲信息技術有限公司 京ICP證000000号  皖公網安備 34019202000659号
地(dì)址:安徽省合肥市(shì)蜀山(shā<↔☆≤n)區(qū)望江西(xī)路(lù)69号西(xī)湖™™λγ(hú)國(guó)際廣場(chǎng) 電(diàn)話(huà):0551-64935878 郵箱:admin@a♥♥✘€jsoft.cn