Spring Security :CsrfFilter过滤器

spring security框架提供的默认登录页面,会有一个name属性值为_csrf的隐藏域:

这是框架在用户访问登录页面之前就生成的,保存在内存中,当用户提交表单的时候会跟着一起提交:_csrf_formdata

然后会经过spring security框架resources目录下配置文件spring-security.xml中的CsrfFilter过滤器:

检查表单提交的_csrf隐藏域的value与内存中保存的的是否一致,如果一致框架则认为当然登录页面是安全的,如果不一致,会报403forbidden错误。但是使用自定义的登录页面时,需要关闭CsrfFilter过滤器,因为自定义的页面并没有那样的一个隐藏域。

posted @ 2019-11-12 19:36  唐桑和歌但  阅读(2013)  评论(0编辑  收藏  举报