Spring Security + OAuth2 精讲 多场景打造企业级认证与授权

一站式掌握主流安全框架与行业解决方案,从容应对各种安全难题
认证与授权是所有应用都必须要实现的,也是所有后端工程师必备的技能,本课将结合前后端分离的权限管理应用,基于从单体到微服务的演进,精讲主流安全框架 Spring Security5.x 的核心技术,一站式覆盖目前企业主流认证授权的方方面面。

〖课程目录〗:

  • 第1章 关于这门课,你需要知道的 3 节 | 33分钟
  • 本章中,将向大家介绍本门课的相关信息,包括你能学到的知识概览、最终项目效果、课程讲解方式以及相关储备知识介绍、环境安装介绍等等。
    • 视频:1-1 课前须知,这里有你需要了解的一切 (12:26)
    • 视频:1-2 环境配置 (09:55)
    • 视频:1-3 工程结构 (10:21)
  • 第2章 初识 Spring Security 9 节 | 141分钟
  • 本章中会带领大家,通过一个简单的 API 鉴权,了解鉴权的目的和机制;如何使用 Postman 进行 API 测试;认识常用的 Token 机制 — JWT;如何使用 Spring Security 进行鉴权以及对于公开接口应该如何保证安全等知识,帮助大家对Spring Security有初步的认识。…
    • 视频:2-1 认证和授权的概念 (12:01)
    • 视频:2-2 过滤器和过滤器链 (12:16)
    • 视频:2-3 HTTP 请求的结构 (14:58)
    • 视频:2-4 HTTP 响应和 HTTP Basic Auth (12:01)
    • 视频:2-5 安全配置 (14:59)
    • 视频:2-6 定制登录页 (16:09)
    • 视频:2-7 csrf, logout 和 rememberMe 的设置 (19:46)
    • 视频:2-8 登录成功及失败的处理 (16:23)
    • 视频:2-9 自定义 Filter (21:44)
  • 第3章 密码的进化和验证 7 节 | 96分钟
  • 密码作为安全的一大要素,我们将通过本章的学习,了解常见的哈希算法和 Spring 目前默认的 Bcrypt 算法机制。学习 Java Validation API 进行领域对象验证,以及自定义注解验证密码是否符合规则。
    • 视频:3-1 密码进化史 (11:55)
    • 视频:3-2 密码编码器 (14:59)
    • 视频:3-3 验证注解和自定义验证注解 (26:56)
    • 视频:3-4 密码的验证规则和自定义注解和验证器 (17:26)
    • 视频:3-5 验证消息的国际化 (09:43)
    • 视频:3-6 异常的处理 (08:00)
    • 视频:3-7 多个安全配置共存 (06:15)
  • 第4章 深入 Spring Security 认证7 节 | 116分钟
  • 本章中,我们将通过不断的定制化,逐渐接触到 Spring Security 中的比如安全上下文,UserDetails 和 UserDetailsService 等核心概念。同时本章也会介绍如何基于 Spring Security 进行单元测试。
    • 视频:4-1 核心组件 – SecurityContext SecurityContextHolder Authentication (17:26)
    • 视频:4-2 UserDetails、UserDetailsService和jdbcAuthentication (14:26)
    • 视频:4-3 定制化数据库 (09:43)
    • 视频:4-4 深度定制化上 – 实现 UserDetails 和 GrantedAuthority (22:15)
    • 视频:4-5 深度定制化下 – UserDetailsService 和 UserDetailsPasswordService (22:12)
    • 视频:4-6 环境和环境变量 (20:46)
    • 视频:4-7 自动化测试 (09:09)
  • 第5章 构建基于 JWT 的认证8 节 | 142分钟
  • 在本章中,我们会通过源码精讲进一步了解认证流程,并基于对流程的理解,自己开发一个独立的 JWT 认证过滤器,完成令牌的生成和刷新。
    • 视频:5-1 认证流程和源码解析 (20:18)
    • 视频:5-2 LDAP 配置和多 AuthenticationProvider 共存 (21:23)
    • 视频:5-3 JWT 的概念和创建以及解析 (20:48)
    • 视频:5-4 访问令牌和刷新令牌以及JWT外部配置 (17:53)
    • 视频:5-5 创建 JwtFilter (16:29)
    • 视频:5-6 实现登录接口和刷新令牌接口(上) (13:53)
    • 视频:5-7 实现登录接口和刷新令牌接口(下) (13:20)
    • 视频:5-8 完成注册接口 (17:18)
  • 第6章 基于角色的用户权限10 节 | 161分钟
  • 在本章中,会带领大家了解一次性密码,多因子认证的概念,实现基于 Email 和短信方式发送验证码,并结合前端的集成学习如何处理前端跨域问题。
    • 视频:6-1 多因子认证和TOTP (22:50)
    • 视频:6-2 云服务和多因子认证逻辑 (08:17)
    • 视频:6-3 短信发送服务 – 阿里云和LeanCloud (19:52)
    • 视频:6-4 Email 发送服务SMTP 和 API 方式 (12:21)
    • 视频:6-5 多因子认证逻辑 —整体逻辑和实体类改造 (15:02)
    • 视频:6-6 多因子认证逻辑—使用 Redis 缓存 (16:02)
    • 视频:6-7 多因子认证逻辑—选择发送方式和验证 (18:43)
    • 视频:6-8 前端集成—前后端的多工程配置 (11:52)
    • 视频:6-9 前端集成—跨域处理 (15:17)
    • 视频:6-10 前端集成 —源码解析和验证多因子登录 (19:48)
  • 第7章 基于数据库的 RBAC8 节 | 103分钟
  • 在本章中,我们会结合一个基于数据库的角色/权限/用户结构,进一步熟悉授权的概念,并实战打造一个完整的、可复用的后台用户管理功能模块。权限表达式是 Spring Security 中非常强大、易于使用的一种可以应用于 URL 和方法级的安全注解表达式,我们也会逐步介绍什么是内建的表达式、何自定义表达式,以及具体在什么场…
    • 视频:7-1 授权的概念和安全表达式的应用 (22:22)
    • 视频:7-2 方法级注解 (12:37)
    • 视频:7-3 RBAC 和角色分级 (14:42)
    • 视频:7-4 数据库和实体类的 RBAC 改造 (15:21)
    • 视频:7-5 元注解简化权限表达式的使用 (10:07)
    • 视频:7-6 使用 AOP 动态刷新角色层级 (10:30)
    • 视频:7-7 前端的安全 (10:04)
    • 视频:7-8 授权流程源码解析和用户组的思路扩展 (07:10)
  • 第8章 实现符合 OAuth 2 标准的授权服务器9 节 | 129分钟
  • 本章将改造前面的应用为多服务器模型,并带大家逐步了解 Oauth 2.0 的流程和机制;如何使用 Spring Security 实现授权服务器和资源服务器;如何结合实战实现Github登录、微博登录以及 QQ 登录;了解 Token 如何进行刷新;单页应用如何在 Oauth2 下工作以及 JWS等概念。…
    • 视频:8-1 OAuth2 的主要角色和流程 (13:49)
    • 视频:8-2 JWS和JWK (10:33)
    • 视频:8-3 搭建授权服务器(一)依赖和表结构 (12:29)
    • 视频:8-4 搭建授权服务器(二)JWKS 和RSA密钥对 (16:12)
    • 视频:8-5 搭建授权服务器(三)授权服务器配置 (12:38)
    • 视频:8-6 前端为例详解授权码流程 (15:27)
    • 视频:8-7 资源服务器的配置 (13:56)
    • 视频:8-8 客户端登录-社交登录和二维码登录原理 (18:34)
    • 视频:8-9 资源服务器的访问 (15:19)
  • 第9章 关于Spring Security你可以了解的更多4 节 | 55分钟
  • 在本章中,会带领大家了解业界成熟的安全服务器 Keycloak,以及如何和 Spring Security 进行集成,在微服务中如何使用 Oauth2等扩展知识。
    • 视频:9-1 Keyloak 简介 (14:59)
    • 视频:9-2 SSO 单点登录 (08:25)
    • 视频:9-3 微服务间的请求调用和拦截器实现token刷新 (19:37)
    • 视频:9-4 总结和回顾 (11:38)

〖视频截图〗:

Spring Security + OAuth2 精讲 多场景打造企业级认证与授权
Spring Security + OAuth2 精讲 多场景打造企业级认证与授权
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。