详解详解Spring Security的的formLogin登录认证模式登录认证模式
对于一个完整的应用系统,与登录验证相关的页面都是高度定制化的,非常美观而且提供多种登录方式。这就
需要Spring Security支持我们自己定制登录页面,也就是本文给大家介绍的formLogin模式登录认证模式,感兴
趣的朋友跟随小编一起看看吧
一、一、formLogin的应用场景的应用场景
在本专栏之前的文章中,已经给大家介绍过Spring Security的HttpBasic模式,该模式比较简单,只是进行了通过携带Http的
Header进行简单的登录验证,而且没有定制的登录页面,所以使用场景比较窄。
对于一个完整的应用系统,与登录验证相关的页面都是高度定制化的,非常美观而且提供多种登录方式。这就需要Spring
Security支持我们自己定制登录页面,也就是本文给大家介绍的formLogin模式登录认证模式。
准备工作准备工作
新建一个Spring Boot 的web应用,引入Spring Security Starter。
准备一个login.html登录页面,页面内容非常简单,一个from表单、用户名和密码输入框,一个提交按钮
准备一个首页index.html,在登录成功之后需要进入index.html首页
首页可以看到syslog(日志管理)、sysuer(用户管理)、biz1(业务一)、biz2(业务二)四个页面超文本链接选项。
通过controller控制层跳转页面,并在对应页面写一些标志性文字即可,不需写具体业务。
需求需求
我们希望biz1(业务一)、biz2(业务二)普通的操作用户user就可以访问
我们希望管理员可以访问包括syslog(日志管理)和sysuser(用户管理)在内的所有资源
以上就是本文介绍formLogin模式需要进行的准备工作及需求,下面我们就来实现其中的核心的登录验证逻辑,准备工作非常
简单请自行实现。(新建spring boot应用,登录页面、首页、四个业务页面都写成非常简单的html即可,不用写实际业务和样
式。)
二、说明二、说明
formLogin模式的三要素:
登录验证逻辑
资源访问控制规则,如:资源权限、角色权限
用户信息
一般来说,使用权限认证框架的的业务系统登录验证逻辑是固定的,而资源访问控制规则和用户信息是从数据库或其他存储介
质灵活加载的。但本文所有的用户、资源、权限信息都是代码配置写死的,旨在为大家介绍formLogin认证模式,如何从数据
库加载权限认证相关信息我还会结合RBAC权限模型再写文章的。
三、实现三、实现formLogin模式基础配置模式基础配置
首先,我们要继承WebSecurityConfigurerAdapter ,重写configure(HttpSecurity http) 方法,该方法用来配置登录验证逻辑。
请注意看下文代码中的注释信息。
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
评论0
最新资源