手绘的思维导图,是我自己根据自身的情况读完这套阿里出品的Spring Security王者晋级文档之后所绘的,相当于是一个知识的总结与梳理,我将其分为“核心组件”与“工作原理/认证流程”。
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!
—、案例介绍
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加密认证
一、设置用户状态
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中处理
方式三:编写异常处理器
一、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分布式认证实现
一、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客户端模式测试
无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。
最后,如果有想要我整理的面试资料的,可以**戳这里免费领取**,我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。
最后,如果有想要我整理的面试资料的,可以**戳这里免费领取**,我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。
[外链图片转存中…(img-VeUbKuFe-1627469661270)]