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-dependenciesBOM 统一管理,无需手动指定。 -
示例:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
2. spring-security-core(底层模块)
-
作用:Spring Security 的 最小核心,仅提供认证/授权的 基础接口与类,例如
UserDetails、AuthenticationManager。 -
不包含: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