<security:intercept-url pattern=“/**” access=“hasanyrole(‘role_user’)”></security:intercept-url>
<security:form-login login-page=“/login.jsp”
login-processing-url=“/login”
default-target-url=“/home.jsp”
authentication-failure-url=“/failure.jsp”
/>
<security:logout logout-url=“/logout”
logout-success-url=“/login.jsp”
/>
</security:http>
前面配置的
<security:intercept-url pattern=“/**” access=“hasanyrole(‘role_user’)”></security:intercept-url>
会使登录界面不可访问,所以我们需要方法
同样的系统的 js css 等静态资源文件也会被对应的过滤器拦截,所以也需要方法
启动服务我们访问登录试试
可以访问到,然后提交登录看看
注意表单设置
然后访问出现了403错误
=========================================================================
上面我们在账号和角色都正确的情况下,登录后出现了 403错误,原因是因为 csrf过滤器拦截了,那为什么系统提供的登录界面没问题呢?原因是如下
在系统提供的登录表单中隐藏的有csrf相关的信息。这时我们可以关闭csrf过滤器,来实现登录工作
重启服务再测试就可以了
=======================================================================
上面我们通过关闭csrf
过滤器实现了认证功能,但是系统将面临csrf攻击的风险,所以我们需要放开服务,同时也要能够完成认证。首先我们来看下CsrfFilter的源码
this.requireCsrfProtectionMatcher.matches(request)方法
通过 GET HEAD TRACE OPTIONS 提交的数据不会 csrf 验证
前面关闭的我们需要放开
导入security标签
security:csrfInput/ 在表单中使用,作用和下面的一致
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
9158)]
[外链图片转存中…(img-f1LKtvOz-1710892769159)]
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
[外链图片转存中…(img-cFFUDrZV-1710892769159)]