内容回顾

  截止到本篇文章,一一哥就带各位详细地学完了SpringSecurity中的各个核心内容,并结合源码带大家研读了SpringSecurity的底层设计。如果你认真地看完了我这个系列的每一篇文章,并跟着每篇教程中的代码编写了对应的案例,现在应该就可以达到从一开始对SpringSecurity的懵懂无知,到今天的熟练使用了。

  最后 壹哥 再把整个系列的内容给各位梳理一下,方便各位复习掌握,我在这里做了一个SpringSecurity核心内容的思维导图,咱们一起看看吧。

Java学习爆破专栏“杀青”丨千锋一一哥Spring Security系列教程总结来咯!_spring

 

 

  1. SpringSecurity简介

  通过本小节,我们了解到了SpringSecurity的基本概念、作用,以及与经典框架Shiro的区别,从中我们知道了SpringSecurity与Shiro的核心都是负责认证与授权,并且大家要知道认证与授权的含义及区别。

  2. 初识SpringSecurity

  然后我们通过一个案例,学习了如何在SpringBoot环境中利用SpringSecurity保护项目安全,并且了解到了SpringSecurity的基本使用。

  3. 3种认证方式

  SpringSecurity提供了3种安全认证方式,即基本认证、表单认证、摘要认证,其中表单认证用的比较多,请各位掌握表单认证的基本用法及底层原理。

  因为目前开发基本都遵循前后端分离的开发模式,所以我们现在必须掌握前后端分离时的认证处理方案,主要是基于JSON进行认证信息的传递,包括认证成功、认证失败时的处理策略。

  4. 2种授权方案

  我们知道,SpringSecurity的核心功能包括认证和授权,其中授权的实现方案有2种,即基于内存模式的授权实现方案与基于数据库模式的授权实现方案,我们开发时主要是基于数据库模式来实现授权,这一章节也是我们必须重点掌握的内容。

  5. SpringSecurity核心源码分析

  我们开发时除了掌握必须的使用方法之外,还应该掌握SpringSecurity的核心源码,对SpringSecurity的底层认证、授权等流程原理有清晰的认识,做到知其然,还要知其所以然。

  6. 实现图形验证码

  在掌握了基本的认证授权基础之上,我们就可以进行一定程度的自定义开发,通过本章节就可以实现添加自定义的登录图形验证码,这里我们可以学习到2种添加验证码的方式,基于自定义过滤器和基于认证提供器来实现。

  7. 实现自动登录与注销登录

  利用SpringSecurity也可以很容易的实现自动登录与注销登录,另外我们还要掌握自动登录的实现原理。

  8. 会话管理

  通过本章节,我们主要是学习了会话的概念、HTTP协议、会话存在的问题,还有就是针对会话的各种攻击方式及拦截手段。另外本章节中,最重要的是掌握针对会话过期的处理策略,掌握会话并发处理方案和实现集群会话。

  9. 密码加密方案

  本章节中,我们主要是掌握SpringSecurity中提供的各种密码加密实现方案,以及密码加密的底层实现原理。

  10. 4种权限控制方式

  在本章节中,我给大家介绍了4种权限控制方式,常用的基于注解和Ant表达式的权限控制方式,这个章节也是我们必须要牢牢掌握的。

  11. 跨域问题的解决

  跨域问题是我们在前后端分离时经常会遇到的问题,对于什么是跨域,以及如何解决跨域问题,在本章节中都有详细介绍,我们主要是掌握SpringSecurity环境下的跨域问题解决方案。

  12. 实现单点登录

  因为目前分布式开发日渐普及,虽然带来了性能的提升,但是也带来了很多问题,比如常规的登录在分布式环境下就存在一定的问题,所以你可以通过本章节掌握到什么是单点登录,以及如何实现签名、如何基于SpringSecurity实现单点登录。

  13. OAuth2.0协议简介

  本章节主要是给大家介绍了另一个开源协议,即OAuth2.0协议,主要是掌握OAuth2.0协议中的认证授权方式及原理,这可以为我们后面学习OAuth2.0协议打下基础。

  只要各位认真的阅读本系列教程中的内容,我相信你一定可以做到从入门到精通,后面我会推出一个利用SpringSecurity搭建的权限控制项目教程,希望各位长期关注 一一哥 哦。

  专栏往期精彩内容

  Spring Security开发专栏24章即将上线!

  Spring Security开发正式上线!

  Spring Security系列教程之创建项目

  Spring Security系列教程之实现HTTP基本认证

  Spring Security系列教程之实现Form表单认证

  Spring Security系列之实现HTTP摘要认证

  Spring Security系列之前后端分离时的安全处理方案

  Spring Security系列教程之基于内存模型实现授权

  Spring Security系列教程之基于默认数据库模型实现授权

  Spring Security系列教之基于自定义数据库模型实现授权

  spring security系列教程之Spring Security核心API讲解

  Spring Security系列教程之Spring Security认证授权流程

  Spring Security系列教程之基于过滤器实现图形验证码

  Spring Security系列教程之基于自定义的认证提供器实现图形验证码

  Spring Security系列教程之基于散列加密方案实现自动登录

  Spring Security系列教程之注销登录的实现及原理分析

  Spring Security系列教程之会话管理之防御固定会话攻击

  Spring Security系列教程之会话管理之处理会话过期

  Spring Security系列教程之会话管理之会话并发控制

  Spring Security系列教程之会话管理之实现集群会话

  Spring Security系列教程之SpringSecurity中的密码加密

  Spring Security系列教程之Spring Security的四种权限控制方式

  Spring Security系列教程之解决Spring Security环境中的跨域问题

  Spring Security系列教程之基于持久化令牌方案实现自动登录

  Spring Security系列教程之解决Spring Security环境中的跨域问题

  Spring Security系列教程之实现CAS单点登录上篇-概述

  Spring Security系列教程之实现CAS单点登录-搭建CAS服务端

  Spring Security系列教程之实现CAS单点登录下篇-搭建CAS客户端

  Spring Security系列教程之OAuth2.0协议详解