# yichuang-security **Repository Path**: code-org/yichuang-security ## Basic Information - **Project Name**: yichuang-security - **Description**: spring-security-oauth2 【2.5.2RELEASE 已归档】教程 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-08 - **Last Updated**: 2024-12-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 介绍 本示例项目,详细的介绍了 Spring Security、OAuth2 的使用,依赖的版本如下: > + `spring-boot-starter-parent` 归档版本: `2.7.18` > + `spring-security-oauth2` 归档版本: `2.5.2.RELEASE` > 以上都是支持Java1.8的最后一个版本,后续不在讲解基于1.8以外的版本。 ## 章节内容 * Servlet 架构的一些过滤链概念介绍 官方文档:[Architecture](https://docs.spring.io/spring-security/reference/5.7/servlet/architecture.html) > [!NOTE] > > **FilterChain** > > * 概念:在 Java Web 应用中,FilterChain 是一个包含多个过滤器和一个 Servlet 的链条。它根据请求的 URI 路径决定哪些过滤器和 Servlet 处理 HttpServletRequest。 > * 功能:每个请求最多由一个 Servlet 处理,但可以经过多个过滤器。过滤器可以修改请求和响应,或直接处理响应以阻止后续的过滤器和 Servlet。 > > **DelegatingFilterProxy** > > * 概念:Spring 提供的一个过滤器实现,用于将 Servlet 容器的过滤器生命周期与 Spring 的 ApplicationContext 连接起来。 > * 功能:通过标准的 Servlet 容器机制注册,但实际工作委托给一个实现了 Filter 接口的 Spring Bean。 > > **FilterChainProxy** > > * 概念:Spring Security 的核心组件,用于管理和执行安全过滤器链。 > * 功能:允许通过 SecurityFilterChain 委托给多个过滤器实例。通常被 DelegatingFilterProxy 包装,以便与 Spring 的 ApplicationContext 集成。 > > **SecurityFilterChain** > > * 概念:FilterChainProxy 使用的组件,用于确定哪些 Spring Security 过滤器应该在当前请求中被调用。 > > * 功能:定义了哪些过滤器在特定请求中生效,通常是 Spring Bean,但通过 FilterChainProxy 而非 DelegatingFilterProxy 注册。 * [Spring Security](/docs/spring-security.md) * [OAuth2](docs/oauth2/oauth2.md) ## 示例项目 * [yichuange-security-quickstart-sample](yichuange-security-quickstart-sample) - spring-boot-starter-security 快速入门 * [yichuang-security-java-jwt-sample](yichuang-security-java-jwt-sample/pom.xml) - 基于spring-boot-starter-security、spring-security-oauth2、spring-security-jwt 创建令牌的方式示例 * [yichuange-security-jwt-sample](yichuange-security-jwt-sample/pom.xml) - 基于spring-boot-starter-security、spring-security-oauth2 、java-jwt 创建令牌的方式示例 * [yichuang-security-jdbc-pwd-storage](yichuang-security-jdbc-pwd-storage/pom.xml) - spring-boot-starter-security jdbc 密码存储认证示例 ## 实战案例 * [Spring Security + OAuth2](docs/advanced.md) ## 参考手册 * [资源汇总](docs/resource.md) ## 日志 * [changelog](changelog.md)