我正在使用GWT和GWTP开发一个web应用程序。我查看了wiki page of GWTP,并按照说明对XSRF攻击进行防护。它在Dev模式下运行正常。
现在,我将其部署到Tomcat服务器。但是在控制台中,它一直告诉我RPC中的客户端没有发送cookie。结果是没有RPC调用能够执行,因为它被认为是XSRF攻击。
有人能告诉我它出了什么问题吗?这是因为Tomcat的设置,因为应用程序在开发模式下运行正常。
发布于 2012-01-11 02:02:14
我想这不是来自GWTP,而是和你的Tomcat有关
默认情况下,Tomcat7中的会话和SSO cookie发送时带有HttpOnly标志,以指示浏览器阻止从JavaScript访问这些cookie。(这可以在Tomcat6.0和5.5中通过在web应用程序或全局CATALINA_BASE/conf/CONTEX.xml文件中的上下文元素上设置useHttpOnly="true“来启用)。http://tomcat.apache.org/migration.html#Session_cookie_configuration
所以,检查一下你的context.xml是否有类似这样的东西:
<Context cookies="true" useHttpOnly="false" >
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>是否应在会话cookies上设置HttpOnly标志,以防止客户端脚本访问会话ID?默认为true。
有关Context Attributes的更多信息
https://stackoverflow.com/questions/8807074
复制相似问题