全网首发!阿里内部出品 Spring Security 项目实战搭建 + 思维脑图

Spring Security 的前身是 Acegi Security,在被收纳为 Spring 子项目后正式更名为 Spring Security。在笔者成书时,Spring Security 已经升级到 5.1.3.RELEASE 版本,加入了原生 OAuth2.0 框架,支持更加现代化的密码加密方式。
可以预见,在 Java 应用安全领域,Spring Security 会成为被首先推崇的解决方案,就像我们看到服务器就会联想到 Linux 一样顺理成章
总目录:

声明:Spring Security 王者晋级文档 以及相关梳理思维脑图 等由于篇幅等的原因,大部分以截图展示,所以可提供源文件给每位感兴趣的小伙伴,直接点这里即可获取资料
第 1 部分
初识 Spring Security
表单认证
认证与授权



第 2 部分
实现图形验证码
自动登录和注销登录、
会话管理
密码加密
跨域与 CORS
跨域请求伪造的防护
单点登录与 CAS
HTTP 认证
@EnableWebSecurity 与过滤器链机制



第 3 部分
用 Spring Social 实现 OAuth 对接


第 4 部分
用 Spring Security OAuth 实现 OAuth 对接


为方便教学,这里已经事先为大家准备好了一个半成品的后台管理系统,而想要完善另一部分,就需要用到 SpringSecurity 了!
第 5 部分:认证功能实现
案例介绍
初识权限管理
初识 Spring Security
Spring Security 过滤器链
SpringSecurity 使用自定义认证页面
SpringSecurity 使用数据库数据完成认证



第 6 部分:授权
设置用户状态
退出登录
remember me
显示当前认证用户名
授权准备工作
动态展示菜单
授权操作
权限不足异常处理



第 7 部分:整合 SpringBoot
SpringSecurity 整合 SpringBoot 集中式版
技术选型
初步整合认证第一版
整合认证第二版【加入 jsp 使用自定义认证页面】
整合认证第三版【数据库认证】
整合实现授权功能
SpringSecurity 整合 SpringBoot 分布式版
分布式认证概念说明
分布式认证流程图
JWT 介绍
SpringSecurity+JWT+RSA 分布式认证思路分析
SpringSecurity+JWT+RSA 分布式认证实现



第 8 部分:OAuth2.0
概念说明
使用场景
说明
建表语句
表字段说明
建父工程并导入 jar 包
创建资源模块
创建授权模块
测试
在数据库中手动添加客户端信息
授权码模式测试
简化模式测试
密码模式测试
客户端模式测试


很多时候,一个系统的安全性完全取决于系统开发人员的安全意识。例如,在我们从未听过 SQL 注入时,如何意识到要对 SQL 注入做防护?关于 Web 系统安全的攻击方式非常多,诸如 XSS、CSRF 等,未来还会暴露出更多的攻击方式,我们只有在充分了解其攻击原理后,才能提出完善而有效的防护策略。学习 Spring Security 并非局限于降低 Java 应用的安全开发成本,通过 SpringSecurity 了解常见的安全攻击手段以及对应的防护方法也尤为重要,这些是脱离具体开发语言而存在的。
声明:Spring Security 王者晋级文档 以及相关梳理思维脑图 等由于篇幅等的原因,大部分以截图展示,所以可提供源文件给每位感兴趣的小伙伴,直接-【传送门】
评论