根据我的研究,为了确保所有 cookie 的安全,需要修改 server.xml,但 heroku 的 webapp 运行器不允许您访问它。有没有办法通过 servlet 过滤器或一些 spring mvc 过滤器来做到这一点?
问问题
872 次
1 回答
0
如果可以,需要 HTTPS - 在这种情况下,Tomcat 做正确的事情(至少使用会话 cookie - 请参阅如何在 tomcat 6 中将会话 cookie 标记为安全(仅限 https))。在 Heroku 上,诀窍是确保 Tomcat 知道请求是安全的 - 默认情况下,在 Heroku 上它不知道,因为入站请求是代理的,并且 SSL 在路由网格中处理。即,request.isSecure()
将返回false
但是,webapp-runner
让您指定一个context.xml
; 在那里您可以进行配置RemoteIpValve
,以便 Tomcat 将获取各种x_forwarded
标头并相应地调整请求(即,如果向路由网格发出 HTTPS 请求,request.isSecure()
现在将是真的,即使通过 Tomcat 仅将请求视为 HTTP。我做了一些事情类似的,记录在此处:Heroku 中的 SSL 重定向
希望有帮助。
于 2013-11-15T22:28:43.283 回答