Spring Security是一个基于Spring的安全框架,提供了一套Web应用安全性的完整解决方案。一般来说,Web应用的安全性包括用户认证(Authentication)和用户授权(Authorization)两个部分。

用户认证指的是验证某个用户是否为系统中的合法主体,也就是说用户能否访问该系统。

用户认证一般要求用户提供用户名和密码,系统通过校验用户名和密码来完成认证过程。用户授权指的是验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限。本课程细说Spring Security这套安全框架,通过案例带你快速学习掌握Spring Security。

 

课程特点

亮点一: 从零开始步步深入

       课程采用从简到难的讲解方式,从配置、内存、数据库、身份验证、权限管理层层深入的方式,通过这种方式对于Spring Security会有一个比较的理解。

亮点二:  基于URL的动态权限

       Spring Security默认使用的是基于注解配置的权限控制,但是在实际项目中我们是基于URL或者是基于资源的,所以我们会讲到如何基于URL动态权限管理。

亮点三: 动态刷新权限

       对于一个登录的用户,如果不退出,那么如何进行权限的刷新呐,3中动态刷新权限方案。

 

学习收获

1.    使用Spring Security搭建一个权限管理系统:基于MySQL数据库搭建身份认证和基于角色的权限控制。。

2.    基于URL进行权限控制:几种实现的方案和基于access()的方案落地。各种模板引擎的使用:Thymeleaf/Freemarker。

3.    动态刷新用户的权限3方案:能够自己动手实现在用户不登出的情况下动态的刷新用户的权限信息。。

 

适合人群

具有Spring及Spring Boot基础的人群,希望学习Spring Security的人群

 

开发环境&使用技术

(1)Eclipse/STS , JDK8,MySQL 8.0.12

(2)spring boot使用版本:2.0.6

(3)Spring Security 使用版本:5.0.9

 

权限管理SpringBoot+SpringSecurity系列文章 - 导读_身份认证

 

课程目录

第一章 Spring Security初体验

1.Spring Security:概述

2.Spring Boot+Spring Security:初体验

 

第二章 基于内存的身份认证和角色授权

3.基于内存的认证信息

4.基于内存的角色授权

 

第三章 基于数据库的身份认证和角色授权

5.基于内存数据库的身份认证和角色授权

6.基于MySQL数据库的身份认证和角色授权

7.自定义登录页面和构建主页

8.登出和403处理

9.动态加载角色

10.原理1

11.自定义Filter

12.页面白名单和获取登录信息

 

第四章 基于URL的动态权限设计

13.  基于URL动态权限n种方案

14.  基于URL动态权限:准备工作

15.  基于URL动态权限:扩展access()的SpEL表达式

16.标签sec:authorize的使用

17.  获取用户信息和session并发控制

18.注解:@PreAuthorize,@PostAuthorize, @Secured

 

第五章 自定义加密算法和灵活升级的加密方式

19.使用MD5加密

20.PasswordEncoder你真的使用明白了嘛

 

第六章 记住我:Remember-me的多种实现方式

21.记住我(Remember-Me方案

22.记住我(Remember-Me):基于简单加密token的方案

23.记住我(Remember-Me): 基于持久化token的方案

24.设置登录过期时间的正确姿势

 

第七章 Thyemeleaf/Freemarker混合使用

25.使用Freemarker

26.Freemarker在ftl中使用@security

 

第八章 动态刷新权限信息(不退出登录)

27.动态权限修改Session刷新权限信息:设置session过期

28.动态权限修改Session刷新权限信息:拦截器

29.动态权限修改Session刷新权限信息:过滤器

......

等等~