顶礼膜拜!阿里内部出品,全网首发 Spring Security 项目实战搭建
Spring Security 的前身是 Acegi Security,在被收纳为 Spring 子项目后正式更名为 Spring Security。在笔者成书时,Spring Security 已经升级到 5.1.3.RELEASE 版本,加入了原生 OAuth2.0 框架,支持更加现代化的密码加密方式。
可以预见,在 Java 应用安全领域,Spring Security 会成为被首先推崇的解决方案,就像我们看到服务器就会联想到 Linux 一样顺理成章
限于文章篇幅原因,只能以截图的形式展示出来,有需要的小伙伴 点击这里凭本文截图即可获取!
目录总览
第 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 了解常见的安全攻击手段以及对应的防护方法也尤为重要,这些是脱离具体开发语言而存在的。
限于文章篇幅原因,只能以截图的形式展示出来,有需要的小伙伴 点击这里凭本文截图即可获取!
评论