Spring Security原理与实战
全新正版 急速发货
¥
43
5.4折
¥
79.9
全新
库存4件
作者郑天民
出版社人民邮电出版社
ISBN9787115577894
出版时间2022-03
装帧平装
开本其他
定价79.9元
货号29382156
上书时间2024-12-21
商品详情
- 品相描述:全新
- 商品描述
-
导语摘要
本书主要介绍基于 Spring Security 构建系统安全性的技术体系和工程实践。围绕安全性需求,本书讨论Spring Security框架所提供的各项解决方案,包括认证、授权、加密、CSRF保护、CORS、方法级安全访问、OAuth2协议、微服务架构、JWT、单点登录等核心功能。同时,本书基于这些功能构建了完整的三个案例系统,并给出了具体的实现过程和示例代码。
本书面向广大服务端开发人员,读者不需要有很深的技术功底,也不限于特定的开发语言,但熟悉Java EE常见技术并掌握一定系统设计基本概念有助于更好地理解书中的内容。同时,本书也适合对安全性实现技术感兴趣的开发人员学习。
作者简介
郑天民,日本足利工业大学信息工程学硕士,拥有 10 余年软件行业从业经验,目前在一家大健康领域的创新型科技公司担任CTO,负责产品研发与技术团队管理工作。开发过 10 余个面向研发人员的技术和管理类培训课程项目,在架构设计和技术管理方面具有丰富的经验和深入的理解。他还是阿里云MVP、腾讯云TVP、TGO鲲鹏会会员。著有《Apache ShardingSphere实战》《Spring响应式微服务Spring Boot 2+Spring 5+Spring Cloud实战》《系统架构设计》《向技术管理者转型》《微服务设计原理与架构》《微服务架构实战》等图书。
目录
第 1篇 Spring Security概述
第 1章 直面Spring Security3
1.1 Spring Security概览3
1.2 Spring Security功能体系4
1.2.1 Spring Security与单体应用5
1.2.2 Spring Security与微服务架构7
1.2.3 Spring Security与响应式系统8
1.3 Spring Security配置体系9
1.4 全书内容架构10
1.5 本章小结11
第 2篇 认证和授权
第 2章 用户认证15
2.1 HTTP基础认证和表单登录认证15
2.1.1 HTTP基础认证16
2.1.2 表单登录认证17
2.2 配置Spring Security用户认证体系18
2.2.1 使用基于内存的用户信息存储方案19
2.2.2 使用基于数据库的用户信息存储方案19
2.3 Spring Security中的用户对象和认证对象21
2.3.1 Spring Security中的用户对象21
2.3.2 Spring Security中的认证对象24
2.4 实现定制化用户认证方案27
2.4.1 扩展UserDetails27
2.4.2 扩展UserDetailsService28
2.4.3 扩展AuthenticationProvider29
2.5 本章小结31
第3章 访问授权33
3.1 Spring Security中的权限和角色33
3.1.1 基于权限进行访问控制34
3.1.2 基于角色进行访问控制35
3.2 使用配置方法控制访问权限37
3.2.1 MVC匹配器38
3.2.2 Ant匹配器39
3.2.3 正则表达式匹配器40
3.3 Spring Security授权流程41
3.3.1 拦截请求43
3.3.2 获取权限配置43
3.3.3 执行授权决策46
3.4 本章小结49
第4章 密码安全51
4.1 密码编码器51
4.1.1 PasswordEncoder抽象52
4.1.2 自定义PasswordEncoder54
4.1.3 代理式DelegatingPasswordEncoder55
4.2 Spring Security加密模块59
4.3 本章小结60
第5章 案例实战:实现自定义用户认证体系61
5.1 案例设计和初始化61
5.1.1 案例设计61
5.1.2 系统初始化62
5.2 实现自定义用户认证65
5.2.1 实现用户管理65
5.2.2 实现认证流程67
5.2.3 实现安全配置68
5.3 本章小结70
第3篇 扩展插件
第6章 过滤器73
6.1 Spring Security过滤器架构73
6.1.1 Servlet与管道-过滤器模式73
6.1.2 Spring Security中的过滤器链74
6.2 实现自定义过滤器75
6.2.1 开发过滤器75
6.2.2 配置过滤器77
6.3 Spring Security中的过滤器78
6.4 本章小结80
第7章 CSRF和CORS81
7.1 使用Spring Security提供CSRF保护81
7.1.1 CSRF基本概念81
7.1.2 使用CsrfFilter82
7.1.3 定制化CSRF保护85
7.2 使用Spring Security实现CORS87
7.2.1 CORS基本概念87
7.2.2 使用CorsFilter88
7.2.3 使用@CrossOrigin注解88
7.3 本章小结89
第8章 全局方法安全91
8.1 全局方法安全机制91
8.2 使用注解实现方法级别授权92
8.2.1 @PreAuthorize注解92
8.2.2 @PostAuthorize注解94
8.3 使用注解实现方法级别过滤95
8.3.1 @PreFilter注解95
8.3.2 @PostFilter注解96
8.4 本章小结97
第9章 案例实战:实现多因素认证机制99
9.1 案例设计和初始化99
9.1.1 多因素认证设计99
9.1.2 系统初始化100
9.2 实现多因素认证机制101
9.2.1 实现认证服务101
9.2.2 实现前端服务103
9.3 本章小结109
第4篇 微服务安全
第 10章 OAuth2协议113
10.1 OAuth2协议详解113
10.1.1 OAuth2协议的应用场景113
10.1.2 OAuth2协议的角色115
10.1.3 OAuth2协议的令牌116
10.1.4 OAuth2协议的授权模式117
10.2 OAuth2授权服务器118
10.2.1 构建OAuth2授权服务器118
10.2.2 设置客户端和用户认证信息119
10.2.3 生成令牌123
10.3 本章小结124
第 11章 OAuth2协议与微服务架构125
11.1 集成OAuth2协议与微服务架构125
11.1.1 微服务架构技术体系125
11.1.2 OAuth2协议与微服务架构集成方式129
11.2 在微服务中嵌入访问授权控制132
11.2.1 用户层级的权限访问控制132
11.2.2 用户+角色层级的权限访问控制133
11.2.3 用户+角色+请求方法层级的权限访问控制133
11.3 在微服务中传播令牌134
11.4 本章小结135
第 12章 JWT概述137
12.1 JWT137
12.1.1 JWT的基本结构137
12.1.2 JWT的优势138
12.2 集成OAuth2协议与JWT138
12.3 在微服务中使用JWT141
12.3.1 从HTTP请求中获取JWT令牌142
12.3.2 以线程安全的方式存储JWT令牌142
12.3.3 将JWT令牌嵌入RestTemplate请求中143
12.4 本章小结144
第 13章 单点登录145
13.1 单点登录架构145
13.1.1 单点登录与OAuth2协议145
13.1.2 单点登录的工作流程146
13.2 实现SSO服务器端147
13.2.1 配置基础认证和授权信息147
13.2.2 配置OAuth2授权服务器148
13.3 实现SSO客户端150
13.4 本章小结152
第 14章 案例实战:构建微服务安全架构153
14.1 案例设计和初始化153
14.1.1 案例业务模型153
14.1.2 案例设计155
14.2 构建微服务基础设施组件157
14.2.1 注册中心157
14.2.2 配置中心159
14.2.3 服务网关162
14.3 实现业务服务165
14.3.1 集成微服务基础组件165
14.3.2 实现业务流程170
14.4 集成和扩展JWT172
14.4.1 集成JWT172
14.4.2 扩展JWT173
14.5 本章小结176
第5篇 响应式安全
第 15章 响应式Spring Security179
15.1 响应式编程和Spring框架179
15.1.1 响应式编程的基本概念179
15.1.2 Project Reactor181
15.1.3 Spring WebFlux184
15.2 响应式Spring Security185
15.2.1 响应式用户认证185
15.2.2 响应式授权机制187
15.2.3 响应式方法级别访问控制188
15.3 本章小结189
第 16章 测试Spring Security191
16.1 测试系统安全性191
16.1.1 安全性测试与Mock机制191
16.1.2 Spring Security测试解决方案192
16.2 测试Spring Security功能194
16.2.1 测试用户194
16.2.2 测试认证196
16.2.3 测试全局方法安全197
16.2.4 测试CSRF和CORS配置198
16.3 本章小结200
内容摘要
本书主要介绍基于 Spring Security 构建系统安全性的技术体系和工程实践。围绕安全性需求,本书讨论Spring Security框架所提供的各项解决方案,包括认证、授权、加密、CSRF保护、CORS、方法级安全访问、OAuth2协议、微服务架构、JWT、单点登录等核心功能。同时,本书基于这些功能构建了完整的三个案例系统,并给出了具体的实现过程和示例代码。
本书面向广大服务端开发人员,读者不需要有很深的技术功底,也不限于特定的开发语言,但熟悉Java EE常见技术并掌握一定系统设计基本概念有助于更好地理解书中的内容。同时,本书也适合对安全性实现技术感兴趣的开发人员学习。
主编推荐
郑天民,日本足利工业大学信息工程学硕士,拥有 10 余年软件行业从业经验,目前在一家大健康领域的创新型科技公司担任CTO,负责产品研发与技术团队管理工作。开发过 10 余个面向研发人员的技术和管理类培训课程项目,在架构设计和技术管理方面具有丰富的经验和深入的理解。他还是阿里云MVP、腾讯云TVP、TGO鲲鹏会会员。著有《Apache ShardingSphere实战》《Spring响应式微服务Spring Boot 2+Spring 5+Spring Cloud实战》《系统架构设计》《向技术管理者转型》《微服务设计原理与架构》《微服务架构实战》等图书。
— 没有更多了 —
以下为对购买帮助不大的评价