Spring Boot 与 Spring Security 依赖说明

Spring Boot 与 Spring Security 依赖说明

Spring Boot 与 Spring Security 依赖说明

1. spring-boot-starter-security(推荐)

  • 作用:Spring Boot 官方提供的 starter,一键引入 Spring Security 全部必需模块。

  • 包含

    • spring-security-core

    • spring-security-web

    • spring-security-config

    • spring-security-crypto

    • 以及 Spring Boot 的自动配置。

  • 版本管理:由 Spring Boot 的 spring-boot-dependencies BOM 统一管理,无需手动指定。

  • 示例

    
    <dependency>
    
        <groupId>org.springframework.boot</groupId>
    
        <artifactId>spring-boot-starter-security</artifactId>
    
    </dependency>
    
    

2. spring-security-core(底层模块)

  • 作用:Spring Security 的 最小核心,仅提供认证/授权的 基础接口与类,例如 UserDetailsAuthenticationManager

  • 不包含:Web 支持、自动配置、过滤器链等。

  • 版本管理:必须 手动指定 版本号。

  • 示例

    
    <dependency>
    
        <groupId>org.springframework.security</groupId>
    
        <artifactId>spring-security-core</artifactId>
    
        <version>6.5.1</version>
    
    </dependency>
    
    

3. 对比速查表

| 特性 | spring-boot-starter-security | spring-security-core |

| -------------------------- | ---------------------------- | -------------------- |

| 自动引入其他 Security 模块 | ✅ | ❌ |

| 支持 Spring Boot 自动配置 | ✅ | ❌ |

| 需要手动指定版本 | ❌ | ✅ |

| 适用场景 | 所有 Spring Boot 项目 | 非 Boot 或极简依赖 |

4. 结论

  • 在 Spring Boot 项目中,直接使用 spring-boot-starter-security

  • 除非需要 极度精简 的底层依赖,否则无需单独引入 spring-security-core





本文由萧兮的博客原创发布,欢迎转载,转载务必保留原文链接。

萧兮的博客https://www.20010515.xyz · 原文:https://www.20010515.xyz/posts/c2e18084-a333-48fb-8211-8ad28f90ad78