微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – Web应用程序中的CSRF保护

我的应用程序具有Apache模块提供的CSRF保护.我的应用程序包含几个页面,允许上传一些文件,如下所示:

当我们将apache版本从httpd-2.2.3更新为httpd-2.2.15时,所有工作都运行正常.

我已经google了一段时间,发现问题可能与我的表单中的multipart / form-data参数有关.在这种情况下,表单发送为不安全.另外我发现spring可以通过Spring doc http://docs.spring.io/spring-security/site/docs/3.2.0.CI-SNAPSHOT/reference/html/csrf.html#csrf-multipartfilter中的MultipartFilter处理上面的内容

我是CSRF新手.很高兴知道可以使用带有apache配置的spring CSRF保护来处理这种情况.

此外,我找到了解决方法,我可以为所需的URL禁用CSRF,例如

RewriteRule /url/mycontroller.controller – [E=CSRF_IGnorE:yes]

但我不确定哪一个是正确的.

最佳答案
以下是我的建议:

如果不需要,请删除enctype,因为某些CSRF库(包括CSRF Guard)不支持multipart / form-data.

如果使用隐藏属性设置CSRF令牌,请尝试在action属性中附加令牌.
这是这个链接https://code.google.com/p/csrf-filter/

如果您仍然遇到同样的问题,则可能必须从CSRF检查中排除该URL.

原文地址:https://www.jb51.cc/spring/432199.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐