spring security 5 使用及分析(二:自定义配置—登录页配置及原理)

上一期我主要介绍了Spring Security的一些基础的配置,以及源码的介绍。这一期我们来介绍如何通过自定义配置来实现权限的控制。

1.1、登录页配置及使用

 

首先,我们要有数据库的用户表, 这里我已经创建了sys_user用户表:

 

 

这里简单的说下这个登陆验证的流程,以便大家更好的理解下面的代码,先看图:

 

 

 

绿色背景色是我们需要自定义实现的,也就是下面会出现的类方法

对于中间件那块来说是暂时没有的,可以不管先,后面的文章会引入,到时候再作介绍

其实,Spring Security认证的流程是没有那么简单的,这里只是给大家方便理解才简化了很多流程

下面就开始展示代码

由于需要操作数据库,以及展示页面等,这里就需要引入持久层以及前端页面一些框架

我这里用的是持久层是Spring Data Jpa,前端用的是Thymeleaf,Maven代码如下:

properties文件配置如下:

 

接下来,创建一个用户实体类:

 

 

 

 

 接下来我们创建一个SysUserRepository,也就是我们所说的dao层,由于JPA为我们提供了一系列的接口和方法,我们只需要去继承他们的接口就能满足一般的修改、查询等操作,代码如下:

 

 

然后是创建一个service层SysUserService,代码如下图:

 

 

接下来我们配置自定义认证授权类:

 

 

 

 这里虽然做了自定义认证授权类,还需要建立认证成功和失败的处理结果类。下面是认证成功代码:

 

 

认证失败类代码如下:

 

 

 那么代码写到这里,Spring Security就已经万事具备了,我们差的就是对Spring Security配置了,这里创建一个配置SpringSecurity类然后去继承WebSecurityConfigurerAdapter

 

 

 好了,本期的Spring Security的演示就到这里了,欢迎大家的阅读,我们下期见!

posted @ 2020-04-02 16:41  幸福小海豹  阅读(980)  评论(0编辑  收藏  举报