手绘的思维导图,是我自己根据自身的情况读完这套阿里出品的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客户端模式测试
每次面试都是检验自己知识与技术实力的一次机会,面试结束后建议大家及时总结复盘,查漏补缺,然后有针对性地进行学习,既能提高下一场面试的成功概率,还能增加自己的技术知识栈储备,可谓是一举两得。
以下最新总结的阿里P6资深Java必考题范围和答案,包含最全MySQL、Redis、Java并发编程等等面试题和答案,用于参考~
重要的事说三遍,关注+关注+关注!
更多笔记分享
本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录