Spring Security观后感——手绘思维脑(供参考)
手绘的思维导图,是我自己根据自身的情况读完这套阿里出品的Spring Security王者晋级文档之后所绘的,相当于是一个知识的总结与梳理,我将其分为“核心组件”与“工作原理/认证流程”。
Spring Security王者晋级文档-Spring Security 4.2内部资料
Spring Security 4.2内部资料——主要专注于企业级 Java 安全的研究,尤其是 Spring Security。因此,我们的一切内容会以 Java EE 安全性编程模型及 Spring Security为中心。
一、Java EE应用的安全性
-
1.1 Apache Tomcat 8.5内置的Java EE安全性支持
-
1.2传统Java EE安全性编程模型的局限性
二、Spring Security 4.2介绍
-
2.1揭秘Spring Security
-
2.2下载Spring Security 4.2正式发布包
-
2.3下载Spring Security 4.2源码发布包
-
2.4运行及分析Spring Security内置的部分Demo
三、Spring Security架构设计
-
3.1 Spring Security组件的组成
-
3.2 Hello,Spring Security
-
3.3 深入Spring Security架构
-
3.4关于Spring Security使能应用的若干研发方式
四、Spring Security认证策略及认证机制
-
4.1安全性认证概述
-
4.2 HTTP BASIC认证
-
4.3HTTP摘要认证
-
4.4 X.509CA证书认证
-
4.5表单认证
五、Spring Security认证提供者
-
5.1概述
-
5.2 DAO认证提供者
-
5.3 LDAP认证提供者
六、Captcha集成支持
-
6.1概述
-
6.2 Captcha集成支持
七、Spring Security授权策略及机制
-
7.1概述
-
7.2基于AOP拦截器的设计
-
7.3公平投票
八、保护Web资源
-
8.1 FilterSecuritylnterceptor过滤器
-
8.2Spring Security内置的前端JSP标签库
九、保护业务方法
十、高级特性
-
10.1 <security:debug/=元素
-
10.2 AnnotationSecurityAspect AspectJ切面
-
10.3 Spring Security内置的代码测试支持
Spring Security王者晋级文档-01认证功能实现
准备好了一个半成品的后台管理系统,而想要完善另一部分,就需要用到Spring Security!
—、案例介绍
-
1.1案例效果图
-
1.2建表语句
-
1.3页面部分所用技术简单说明
-
1.4后台部分所用技术简单说明
二、初识权限管理
-
2.1权限管理概念
-
2.2完成权限管理需要三个对象
三、初识Spring Security
-
3.1 Spring Security概念
-
3.2 Spring Security简单入门
四.Spring Security过滤器链
-
4.1 Spring Security常用过滤器介绍
-
4.2 spring security过滤器链加载原理
五.SpringSecurity使用自定义认证页面
-
5.1在SpringSecurity主配置文件中指定认证页面配置信息
-
5.2 SpringSecurity的csrf防护机制
六、SpringSecurity使用数据库数据完成认证
-
6.1认证流程分析
-
6.2初步实现认证功能
-
6.3加密认证
Spring Security王者晋级文档-02
一、设置用户状态
-
1.1源码分析
-
1.2判断认证用户的状态
二、退出登录
三.remember me
-
3.1记住我功能原理分析
-
3.2记住我功能页面代码
-
3.3开启remember me过滤器
-
3.4 remember me安全性分析
-
3.5持久化remember me信息
四、显示当前认证用户名
五、授权准备工作
六、动态展示菜单
七、授权操作
-
7.1开启授权的注解支持
-
7.2在注解支持对应类或者方法上添加注解
八、权限不足异常处理
-
方式一:在spring-security.xml配置文件中处理
-
方式二:在web.xml中处理
-
方式三:编写异常处理器
Spring Security王者晋级文档-03整合SpringBoot
一、SpringSecurity整合SpringBoot集中式版
-
1.1技术选型
-
1.2初步整合认证第一版
-
1.3整合认证第二版【加入jsp使用自定义认证页面】
-
1.4整合认证第三版【数据库认证】
-
1.5整合实现授权功能
二、SpringSecurity整合SpringBoot分布式版
-
2.1分布式认证概念说明
-
2.2分布式认证流程图
-
2.3JWT介绍
-
2.4SpringSecurity+JWT+RSA分布式认证思路分析
-
2.5SpringSecurity+JWT+RSA分布式认证实现
Spring Security王者晋级文档-04OAuth2.0
一、OAuth2.0介绍
-
1.1概念说明
-
1.2使用场景
-
1.3OAuth2.0中四种授权方式
二、OAuth2.0中表结构说明
-
2.1说明
-
2.2建表语句
-
2.3表字段说明
三、OAuth2.0实战案例
-
3.1创建父工程并导入jar包
-
3.2创建资源模块
-
3.3创建授权模块
四、测试
-
4.1在数据库中手动添加客户端信息
-
4.2授权码模式测试
-
4.3简化模式测试
-
4.4密码模式测试
-
4.5客户端模式测试
最后
给读者们一个小福利,有需要这些资料的朋友们可以点击我,即可免费领取资料!
ActiveMQ消息中间件面试专题
- 什么是ActiveMQ?
- ActiveMQ服务器宕机怎么办?
- 丢消息怎么办?
- 持久化消息非常慢怎么办?
- 消息的不均匀消费怎么办?
- 死信队列怎么办?
- ActiveMQ中的消息重发时间间隔和重发次数吗?
ActiveMQ消息中间件面试专题解析拓展:
redis面试专题及答案
- 支持一致性哈希的客户端有哪些?
- Redis与其他key-value存储有什么不同?
- Redis的内存占用情况怎么样?
- 都有哪些办法可以降低Redis的内存使用情况呢?
- 查看Redis使用情况及状态信息用什么命令?
- Redis的内存用完了会发生什么?
- Redis是单线程的,如何提高多核CPU的利用率?
Spring面试专题及答案
- 谈谈你对 Spring 的理解
- Spring 有哪些优点?
- Spring 中的设计模式
- 怎样开启注解装配以及常用注解
- 简单介绍下 Spring bean 的生命周期
Spring面试答案解析拓展
高并发多线程面试专题
- 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行?
- Java 中新的 Lock 接口相对于同步代码块(synchronized block)有什么优势?如果让你实现一个高性能缓存,支持并发读取和单一写入,你如何保证数据完整性。
- Java 中 wait 和 sleep 方法有什么区别?
- 如何在 Java 中实现一个阻塞队列?
- 如何在 Java 中编写代码解决生产者消费者问题?
- 写一段死锁代码。你在 Java 中如何解决死锁?
高并发多线程面试解析与拓展
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
中 wait 和 sleep 方法有什么区别?
- 如何在 Java 中实现一个阻塞队列?
- 如何在 Java 中编写代码解决生产者消费者问题?
- 写一段死锁代码。你在 Java 中如何解决死锁?
高并发多线程面试解析与拓展
[外链图片转存中…(img-GeJrTzG9-1624511162980)]
jvm面试专题与解析
- JVM 由哪些部分组成?
- JVM 内存划分?
- Java 的内存模型?
- 引用的分类?
- GC什么时候开始?
JVM面试专题解析与拓展!
[外链图片转存中…(img-NeNJgHbt-1624511162981)]