设置好静态资源和认证页面放行后仍不能登录,显示 403 Forbidden 错误,原因是 CSRF 跨站域请求伪造过滤器没有设置好,有两种解决方案:

1.去掉 csrf 拦截的过滤器 (有安全隐患)

<security:csrf disabled="true"/>

2.在认证页面携带 token 请求

1) 引入 Spring Security taglib 标签:

<%@ taglib uri="http://www.springframework.org/security/tags" prefix="security"%>

2) 在登录表单中加入以下代码:

<!--普通表单提交-->
<security:csrfInput />

或者

<!--Ajax 提交-->
<security:csrfMetaTags/>

注意:注销用户登录时同样也要使用表单和带上 <security:csrfInput /> 标签

最后修改日期: 2021年9月18日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。