,环境:Springboot2.4.12 + Spring Security 5.4.9,本篇主要内容是基于内存的配置,访问:,http://localhost:8080/demos/home。,将会自动跳转到默认地登录页面:,
,使用配置文件中配置的admin/123123进行登录。,
,没有任何问题,再定义一个POST接口。,注意:这里我们通过Postman访问默认的登录/login接口先进行登录,登录完成后我们在访问这个post接口。(记住我们在上面访问的GET /demos/home接口只要登录后就可以继续访问该接口)。,
,首次登录时注意返回的登录页面的html内容,表单信息中多了一个隐藏域_csrf字段,如果我们通过Postman模拟登录时如果不带上该字段将无法登录。,
,修改登录信息添加上_csrf表单字段,再进行登录。,
,这里返回404状态码是由于我们没有配置默认登录成功页,到此在Postman中就登录成功了,接下来咱们继续通过Postman访问GET /demos/home接口。,
,直接访问没有任何问题,接着访问上面定义的POST /demos/post接口。,
,服务端返回403拒绝访问,上面GET方式正常,POST出现该异常,接着将上面我们登录时候的_csrf字段一起进行提交。,
,针对POST请求必须携带正确的_csrf信息才能继续方法。,在默认情况下Security会添加CsrfFilter过滤器。,一般我们都会关闭csrf功能。,以上是关于Spring Security默认配置的情况下csrf相关问题。接下来通过自定义类配置来设定用户的用户信息。,通过上面配置后,在进行授权的时候就需要使用这里的配置信息。,本篇介绍到这里,下篇将介绍具体的请求拦截配置及自定义登录页面等功能更。
© 版权声明
文章版权归作者所有,未经允许请勿转载。