展开全部

主编推荐语

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

内容简介

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

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

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

目录

  • 版权信息
  • 内容简介
  • 前言
  • 第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 小结
展开全部

评分及书评

尚无评分
目前还没人评分
  • 加载中...

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。