文章目录
- [Spring Security:Java 生态的安全基石](#Spring Security:Java 生态的安全基石)
Spring Security:Java 生态的安全基石
Spring Security 是 Spring 生态中负责安全防护的框架,提供认证、授权、常见攻击防御等能力。Java 后端开发中涉及登录、权限、接口保护等需求,基本上都会用到它。

项目目前累计 9,529 个 Star,是 Java 安全领域的标准方案。Spring Security 6.0 要求 Spring 6.0 以上和 Java 17,属于比较新的技术栈要求。
Spring Security 的核心能力可以分为四个部分:
- 认证: 支持表单登录、OAuth2、SAML、LDAP、HTTP Basic 等多种认证方式,可以灵活组合
- 授权: 可以按 URL 路径、方法级别、对象级别做细粒度的权限控制
- 攻击防护: 内置 CSRF、XSS、会话固定等常见 Web 攻击的防御机制,开箱即用
- 框架集成: 与 Spring Boot、Spring MVC、Spring WebFlux 无缝配合,配置简单

项目使用 Gradle 构建,克隆源码后可以直接编译:
bash
git clone git@github.com:spring-projects/spring-security.git
./gradlew build
如果只需要安装到本地 Maven 仓库,执行 ./gradlew publishToMavenLocal 即可。想生成参考文档的话,运行 ./gradlew :spring-security-docs:antora,输出在 docs/build/site 目录下。
IDE 支持方面,IntelliJ 可以直接打开项目,无需额外配置。Eclipse 和 VS Code 需要先执行 ./gradlew cleanEclipse eclipse 生成元数据文件,再导入项目。VS Code 用户注意不要用 Gradle for Java 扩展导入,要用生成的 Eclipse 元数据。
Spring Security 的文档体系比较完善,Spring 官网提供了参考手册和 JavaDoc API 文档,还有一个 Hello Spring Security 快速入门教程可以用来跑通第一个 Demo。
项目采用 Apache 2.0 开源协议,社区活跃,Stack Overflow 上有 Spring Security 标签积累了大量问答。如果需要企业级的技术支持,Spring 官方也提供商业支持服务。
果需要企业级的技术支持,Spring 官方也提供商业支持服务。