内容回顾
截止到本篇文章,一一哥就带各位详细地学完了SpringSecurity中的各个核心内容,并结合源码带大家研读了SpringSecurity的底层设计。如果你认真地看完了我这个系列的每一篇文章,并跟着每篇教程中的代码编写了对应的案例,现在应该就可以达到从一开始对SpringSecurity的懵懂无知,到今天的熟练使用了。
最后 壹哥 再把整个系列的内容给各位梳理一下,方便各位复习掌握,我在这里做了一个SpringSecurity核心内容的思维导图,咱们一起看看吧。
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搭建的权限控制项目教程,希望各位长期关注 一一哥 哦。
2023-03-22 千锋郑州发布了 《千锋教育与淮南师范学院举办的“锋芒杯”信创Topcoder大赛圆满落幕》的文章
2023-03-22 千锋郑州发布了 《千锋联合滁州学院计算机与信息工程学院举办“锋芒杯”信工小程序设计大赛》的文章
2022-08-12 千锋郑州发布了 《千锋与辽宁工程技术大学座谈交流,合力促进高校学子高质量就业》的文章
2022-08-12 千锋郑州发布了 《千锋与濮阳职业技术学院交流座谈,助力高校毕业生高质量就业》的文章
2022-08-12 千锋郑州发布了 《千锋与郑州工商学院签署校企合作协议,助力高校访企拓岗促就业》的文章