📚 课程介绍
本课程深入讲解了Spring Security和OAuth2在企业级认证与授权中的应用,从基础概念到高级实践,帮助开发者构建安全可靠的应用系统。
📋 学习前提
1. Java基础(Java编程语言和基本语法) 2. Spring框架基础(Spring核心概念和常用组件) 3. Spring Boot基础(Spring Boot框架的快速开发特性) 4. MySQL基础(关系型数据库的基本操作和管理)
📖 课程目录
第1章 关于这门课,你需要知道的
1-1 课前须知,这里有你需要了解的一切
1-2 环境配置
1-3 工程结构
第2章 初识 Spring Security
2-1 认证和授权的概念
2-2 过滤器和过滤器链
2-3 HTTP 请求的结构
2-4 HTTP 响应和 HTTP Basic Auth
2-5 安全配置
2-6 定制登录页
2-7 csrf, logout 和 rememberMe 的设置
2-8 登录成功及失败的处理
2-9 自定义 Filter
第3章 密码的进化和验证
3-1 密码进化史
3-2 密码编码器
3-3 验证注解和自定义验证注解
3-4 密码的验证规则和自定义注解和验证器
3-5 验证消息的国际化
3-6 异常的处理
3-7 多个安全配置共存
第4章 深入 Spring Security 认证
4-1 核心组件 – SecurityContext SecurityContextHolder Authentication
4-2 UserDetails、UserDetailsService和jdbcAuthentication
4-3 定制化数据库
4-4 深度定制化上 – 实现 UserDetails 和 GrantedAuthority
4-5 深度定制化下 – UserDetailsService 和 UserDetailsPasswordService
4-6 环境和环境变量
4-7 自动化测试
第5章 构建基于 JWT 的认证
5-1 认证流程和源码解析
5-2 LDAP 配置和多 AuthenticationProvider 共存
5-3 JWT 的概念和创建以及解析
5-4 访问令牌和刷新令牌以及JWT外部配置
5-5 创建 JwtFilter
5-6 实现登录接口和刷新令牌接口(上)
5-7 实现登录接口和刷新令牌接口(下)
5-8 完成注册接口
第6章 基于角色的用户权限
6-1 多因子认证和TOTP
6-2 云服务和多因子认证逻辑
6-3 短信发送服务 – 阿里云和LeanCloud
6-4 Email 发送服务SMTP 和 API 方式
6-5 多因子认证逻辑 —整体逻辑和实体类改造
6-6 多因子认证逻辑—使用 Redis 缓存
6-7 多因子认证逻辑—选择发送方式和验证
6-8 前端集成—前后端的多工程配置
6-9 前端集成—跨域处理
6-10 前端集成 —源码解析和验证多因子登录
第7章 基于数据库的 RBAC
7-1 授权的概念和安全表达式的应用
7-2 方法级注解
7-3 RBAC 和角色分级
7-4 数据库和实体类的 RBAC 改造
7-5 元注解简化权限表达式的使用
7-6 使用 AOP 动态刷新角色层级
7-7 前端的安全
7-8 授权流程源码解析和用户组的思路扩展
第8章 实现符合 OAuth 2 标准的授权服务器
8-1 OAuth2 的主要角色和流程
8-2 JWS和JWK
8-3 搭建授权服务器(一)依赖和表结构
8-4 搭建授权服务器(二)JWKS 和RSA密钥对
8-5 搭建授权服务器(三)授权服务器配置
8-6 前端为例详解授权码流程
8-7 资源服务器的配置
8-8 客户端登录-社交登录和二维码登录原理
8-9 资源服务器的访问
第9章 关于Spring Security你可以了解的更多
9-1 Keyloak 简介
9-2 SSO 单点登录
9-3 微服务间的请求调用和拦截器实现token刷新
9-4 总结和回顾
