浅出理解Spring Security loginPage和loginProcessingUrl
1.介绍
Spring Security 是一个高度自定义的安全框架。利用 Spring IoC/DI和 AOP 功能,为系统提供了声明式安全访问控制功能,减少了为系统安全而编写大量重复代码的工作。
最近看一个看开源项目时作者使用了Spring Security权限框架来配置login,就想着自己也试着理解下,因为之前也不太理解关于这块,所以记录一下Spring Security中的相关Config,话不多说,让我们直接切入正文,有什么不对欢迎大家指正~
2.相关配置
导入 spring-boot-starter-security 依赖后,Spring Security默认拦截全部请求,当我们直接使用Spring
Security默认的登录页面时,效果就如下这样:
是不是有点ugly,haha开个玩笑,那让我们思考一下,如何来我们自己定义登录页面。下面是项目前
端登录页面的代码,使用的layui渲染的页面:
当什么也没有配置的时候,账号和密码是由 Spring Security 定义生成的。而在实际项目中账号和密码
都是从数据库中查询出来的。所以我们要通过自定义逻辑控制认证逻辑。
我们新建一个SecurityConfig 配置类,需要在Spring Security 的表单登录中定义一下跳转的接口,注意前端发送请求的url要改成自己配置对应的,这里前端是/login
解释一下上图中,总结一下就是
.loginPage这个是定义跳转登录页面的url
.loginProcessingUrl代表的是定义的form表单提交的url
注意:
- 当我们只配置loginPage而不配置loginProcessingUrl的话.loginProcessingUrl默认就是.loginPage
- 反之如果只配置loginProcessUrl的加,就会用不了自定义的登陆页面,spring security会使用自带的默认登陆页面,也就是上图中的页面。
所以尽量loginPage和loginProcessingUrl参数必须同时成对出现,否则的话可能会出现问题
这样配置完之后loginProcessingUrl会用来拦截前端页面对/login这个的请求,拦截到了就走它自己的处理流程,值得注意的一点是在spring security中配置自定义登录的时候,登录请求方式必须为POST,否则会报404错误*
如果使用的是GET方式的请求的话,spring security并不能正确的匹配到。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgakcah
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01