本系列教程将对 Spring Security 详细介绍和各种使用的姿势。
安全性是软件系统的基本非功能特性之一。 在本书中学习的最关键的方面之一是,您应该从应用程序开发的开始阶段就考虑安全性。 我们首先讨论安全性在应用程序开发过程中的位置。 然后,通过实施一些简单的项目,向您介绍 Spring Security 的主干架构的基本组件。
这部分的目的是让您开始使用 Spring Security,尤其是在您刚开始学习此框架时。 但是,即使您已经了解了应用程序级安全性和 Spring Security 的基础架构的某些方面,我还是建议您阅读本部分作为复习。
- 为什么安全很重要?
- Web应用程序中的常见安全漏洞
- 安全应用于各种系统架构
- 你好,Spring security
- 使用 Spring boot + spring security 开发第一个项目
- spring security 哪些是默认配置?
- 覆盖 Spring Security 默认配置
在上面部分中,我们讨论了安全性的重要性以及如何使用 Spring Security 作为依赖项来创建 Spring Boot 项目。 我们还探讨了身份验证的基本组成部分。 现在我们有了一个起点。
这部分构成了本系列的大部分内容。 在这一部分中,我们将深入研究在应用程序开发中使用Spring Security。 我们将详细介绍每个 Spring Security 组件,并讨论开发任何实际应用程序时需要了解的不同方法。 在这部分中,您将找到学习使用 Spring Security 在应用程序中开发安全功能所需的一切,其中包括大量示例项目和两个动手练习。 从基础知识到 OAuth 2 的使用,从使用命令式编程保护应用程序安全到在响应式应用程序中应用安全性,我将带您遍及多门学科的知识之路。 而且,我会确保我们讨论的内容与我在使用 Spring Security 的经验中吸取的教训相得益彰。
首先,您将学习自定义用户管理以及如何处理密码。 在许多情况下,应用程序依赖凭证来认证用户。 因此,讨论用户凭证的管理为进一步讨论身份验证和授权打开了大门。 我们将接着继续自定义身份验证逻辑。然后,我们将讨论与授权相关的组件。 在所有这些章节中,您将学习如何处理基本元素,例如用户详细信息管理器,密码编码器,身份验证提供程序和过滤器。 了解如何应用这些组件并正确理解它们,可以解决现实场景中将要面对的安全要求。
如今,许多应用程序(尤其是部署在云中的系统)都通过 OAuth 2 规范实现了身份验证和授权。 接着,您将学习如何使用 Spring Security 在 OAuth 2 应用中实现身份验证和授权。 再接收,我们将讨论在方法级别应用授权规则。 这种方法使您可以在非Web应用程序中使用对Spring Security 的了解。 在 Web 应用程序中应用限制时,它还为您提供了更大的灵活性。 您将学习将 Spring Security 应用于响应式应用程序。 而且,由于没有测试就没有开发过程,因此最后,您将学习如何为安全性实现编写集成测试。
- Spring Security 管理用户(一)
- Spring Security 管理用户(二)
- Spring Security 用户管理(三)
- Spring Security 用户管理(四)
处理密码系列
- 理解 PasswordEncoder 契约
- 关于Spring Security Crypto模块的更多信息
实现认证系列
- 理解 AuthenticationProvider
- 使用 SecurityContext
- 了解 HTTP Basic 和基于表单的登录身份验证
动手操作:一个小型安全的web应用程序
- 小型安全 web 应用程序 (1)
- 小型安全 web 应用程序 (2)
- 小型安全 web 应用程序 (3)
授权系列
- 配置授权之限制访问
- 配置授权之应用限制
过滤器系列
待续......
应用CSRF保护和CORS系列
待续......
手动操作:职责的分离
待续......
OAuth 2 系列
待续......
响应式 APP 使用 Spring Security
待续......
Spring Security 测试
待续......