2011-06-09 70 views
3

我在web.xml中有以下:Jetty Maven插件8.0.0.M3是否支持所有的Servlet 3?

<session-config> 
    <cookie-config> 
    <http-only>true</http-only> 
    <secure>true</secure> 
    </cookie-config> 
    <session-timeout>15</session-timeout> 
    <tracking-mode>COOKIE</tracking-mode> 
</session-config> 

然而,根據OWASP的Zed的攻擊代理(https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project),餅乾仍然被設置由Spring Security w/o httpOnly或安全標誌。

如果我在Tomcat 7中部署相同的應用程序,它看起來會遵守web.xml中的這些設置。

+1

想通了 - 我在錯誤的順序的元素。沒有來自Tomcat或Jetty的錯誤,但GlassFish抱怨並幫助我找到解決方案。 – 2011-06-09 17:55:37

+0

儘管request.getServletContext()。getEffectiveSessionTrackingModes()方法不能讓Jetty 8尊重跟蹤模式(使用Maven插件org.mortbay.jetty:jetty-maven-plugin:8.1.4.v20120524)只是COOKIE,如果我禁用cookie,我仍然會在URL中獲得jsessionid。你明白了嗎? – paulcm 2012-07-10 14:29:22

回答

0

解決方案:把要素按照正確的順序:

<session-config> 
    <session-timeout>15</session-timeout> 
    <cookie-config> 
     <http-only>true</http-only> 
     <secure>true</secure> 
    </cookie-config> 
    <tracking-mode>COOKIE</tracking-mode> 
</session-config>