深入浅出SpringSecurity

深入浅出SpringSecurity

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

Spring Security是Java企业级开发中常用的安全管理框架,也能完美支持OAuth2。同时,Spring Security作为Spring家族的一员,与Spring Boot、Spring Cloud等框架整合使用也非常方便。

内容简介

本书分为15章,讲解Spring Security框架、认证、认证流程分析、过滤器链分析、密码加密、RememberMe、会话管理、HttpFirewall、漏洞保护、HTTP认证、跨域问题、异常处理、权限管理、权限模型、OAuth2等内容。

本书致力于让读者在学会Spring Security用法的同时,也能通过阅读源码来理解它的实现原理。

本书适合具有Spring Boot基础的读者、Java企业应用开发工程师,也适合作为高等院校和培训机构计算机相关专业师生的教学参考书。

作者简介

作者王松,软件开发工程师,擅长JavaEE开发,对Spring Boot、Spring Cloud微服务等技术有深入的研究。著有畅销书《Spring Boot Vue全栈开发实战》。

章节目录

版权信息

内容简介

前言

第1章 Spring Security架构概览

1.1 Spring Security简介

1.2 Spring Security核心功能

1.2.1 认证

1.2.2 授权

1.2.3 其他

1.3 Spring Security整体架构

1.3.1 认证和授权

1.3.2 Web安全

1.3.3 登录数据保存

1.4 小结

第2章 Spring Security认证

2.1 Spring Security基本认证

2.1.1 快速入门

2.1.2 流程分析

2.1.3 原理分析

2.2 登录表单配置

2.2.1 快速入门

2.2.2 配置细节

2.3 登录用户数据获取

2.3.1 从SecurityContextHolder中获取

2.3.2 从当前请求对象中获取

2.4 用户定义

2.4.1 基于内存

2.4.2 基于JdbcUserDetailsManager

2.4.3 基于MyBatis

2.4.4 基于Spring Data JPA

2.5 小结

第3章 认证流程分析

3.1 登录流程分析

3.1.1 AuthenticationManager

3.1.2 AuthenticationProvider

3.1.3 ProviderManager

3.1.4 AbstractAuthenticationProcessingFilter

3.2 配置多个数据源

3.3 添加登录验证码

3.4 小结

第4章 过滤器链分析

4.1 初始化流程分析

4.1.1 ObjectPostProcessor

4.1.2 SecurityFilterChain

4.1.3 SecurityBuilder

4.1.4 FilterChainProxy

4.1.5 SecurityConfigurer

4.1.6 初始化流程分析

4.2 ObjectPostProcessor使用

4.3 多种用户定义方式

4.4 定义多个过滤器链

4.5 静态资源过滤

4.6 使用JSON格式登录

4.7 添加登录验证码

4.8 小结

第5章 密码加密

5.1 密码为什么要加密

5.2 密码加密方案进化史

5.3 PasswordEncoder详解

5.3.1 PasswordEncoder常见实现类

5.3.2 DelegatingPasswordEncoder

5.4 实战

5.5 加密方案自动升级

5.6 是谁的PasswordEncoder

5.7 小结

第6章 RememberMe

6.1 RememberMe简介

6.2 RememberMe基本用法

6.3 持久化令牌

6.4 二次校验

6.5 原理分析

6.6 小结

第7章 会话管理

7.1 会话简介

7.2 会话并发管理

7.2.1 实战

7.2.2 原理分析

7.3 会话固定攻击与防御

7.3.1 什么是会话固定攻击

7.3.2 会话固定攻击防御策略

7.4 Session共享

7.4.1 集群会话方案

7.4.2 实战

7.5 小结

第8章 HttpFirewall

8.1 HttpFirewall简介

8.2 HttpFirewall严格模式

8.2.1 rejectForbiddenHttpMethod

8.2.2 rejectedBlacklistedUrls

8.2.3 rejectedUntrustedHosts

8.2.4 isNormalized

8.2.5 containsOnlyPrintableAsciiCharacters

8.3 HttpFirewall普通模式

8.4 小结

第9章 漏洞保护

9.1 CSRF攻击与防御

9.1.1 CSRF简介

9.1.2 CSRF攻击演示

9.1.3 CSRF防御

9.1.4 源码分析

9.2 HTTP响应头处理

9.2.1 缓存控制

9.2.2 X-Content-Type-Options

9.2.3 Strict-Transport-Security

9.2.4 X-Frame-Options

9.2.5 X-XSS-Protection

9.2.6 Content-Security-Policy

9.2.7 Referrer-Policy

9.2.8 Feature-Policy

9.2.9 Clear-Site-Data

9.3 HTTP通信安全

9.3.1 使用HTTPS

9.3.2 代理服务器配置

9.4 小结

第10章 HTTP认证

10.1 HTTP Basic authentication

10.1.1 简介

10.1.2 具体用法

10.1.3 源码分析

10.2 HTTP Digest authentication

10.2.1 简介

10.2.2 具体用法

10.2.3 源码分析

10.3 小结

第11章 跨域问题

11.1 什么是CORS

11.2 Spring处理方案

11.2.1 @CrossOrigin

11.2.2 addCorsMappings

11.2.3 CorsFilter

11.3 Spring Security处理方案

11.3.1 特殊处理OPTIONS请求

11.3.2 继续使用CorsFilter

11.3.3 专业解决方案

11.4 小结

第12章 异常处理

12.1 Spring Security异常体系

12.2 ExceptionTranslationFilter原理分析

12.3 自定义异常配置

12.4 小结

第13章 权限管理

13.1 什么是权限管理

13.2 Spring Security权限管理策略

13.3 核心概念

13.3.1 角色与权限

13.3.2 角色继承

13.3.3 两种处理器

13.3.4 前置处理器

13.3.5 后置处理器

13.3.6 权限元数据

13.3.7 权限表达式

13.4 基于URL地址的权限管理

13.4.1 基本用法

13.4.2 角色继承

13.4.3 自定义表达式

13.4.4 原理剖析

13.4.5 动态管理权限规则

13.5 基于方法的权限管理

13.5.1 注解介绍

13.5.2 基本用法

13.5.3 原理剖析

13.6 小结

第14章 权限模型

14.1 常见的权限模型

14.2 ACL

14.2.1 ACL权限模型介绍

14.2.2 ACL核心概念介绍

14.2.3 ACL数据库分析

14.2.4 实战

14.3 RBAC

14.3.1 RBAC权限模型介绍

14.3.2 RBAC权限模型分类

14.3.3 RBAC小结

14.4 小结

第15章 OAuth2

15.1 OAuth2简介

15.2 OAuth2四种授权模式

15.2.1 授权码模式

15.2.2 简化模式

15.2.3 密码模式

15.2.4 客户端模式

15.3 Spring Security OAuth2

15.4 GitHub授权登录

15.4.1 准备工作

15.4.2 项目开发

15.4.3 测试

15.4.4 原理分析

15.4.5 自定义配置

15.5 授权服务器与资源服务器

15.5.1 项目规划

15.5.2 项目搭建

15.5.3 测试

15.5.4 原理分析

15.5.5 自定义请求

15.6 使用Redis

15.7 客户端信息存入数据库

15.8 使用JWT

15.8.1 JWT

15.8.2 JWT数据格式

15.8.3 OAuth2中使用JWT

15.9 小结

深入浅出SpringSecurity是2021年由清华大学出版社出版,作者王松。

得书感谢您对《深入浅出SpringSecurity》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
深入浅出Spring Boot 3.x 电子书
全方位讲解Spring Boot 3.x技术。
深入浅出计算机网络 电子书
本书讲解了计算机网络通信的详细过程和计算机网络通信中的相关协议。
深入浅出WindowsAPI程序设计:编程基础篇 电子书
一本介绍Windows API程序设计的入门图书。
深入浅出WindowsAPI程序设计:核心编程篇 电子书
本书基于win 10和VS 2019编写,系统地介绍了Windows程序设计的核心编程思想与实践。
文本上的算法——深入浅出自然语言处理 电子书
《文本上的算法深入浅出自然语言处理》结合-作者多年学习和从事自然语言处理相关工作的经验,力图用生动形象的方式深入浅出地介绍自然语言处理的理论、方法和技术。本书抛弃掉繁琐的证明,提取出算法的核心,帮助读者尽快地掌握自然语言处理所必需的知识和技能。本书主要分两大部分。第一部分是理论篇,包含前3章内容,主要介绍一些基础的数学知识、*优化理论知识和一些机器学习的相关知识。第二部分是应用篇,包含第4章到第8