Latest Stable
7.0.5
Released 20 Apr 2026
(1 month ago)
Latest Development
7.1.0-RC1
Released 20 Apr 2026
(1 month ago)
Software
Spring Security
IntroductionSpring Security is a powerful, highly customizable authentication and access-control framework for Java applications. It is the de-facto standard for securing Spring-based applications, providing comprehensive support for both authentication and authorization, protecting against common vulnerabilities like CSRF and session fixation, and integrating seamlessly with OAuth2.
VendorBroadcom
AuthorBen Alex
DeveloperBroadcom / Spring Security Team
Written inJava
PlatformJVM
Operating systemCross-platform
TypeSecurity Framework
Repositoryhttps://github.com/spring-projects/spring-security
Websitehttps://spring.io/projects/spring-security
Lifecycle policyhttps://spring.io/projects/spring-security#support
Support policyhttps://spring.io/support
Security policyhttps://spring.io/security
LicenseApache License 2.0
LATEST RELEASES:
6.5.10 20 Apr 2026 (1 month ago)
7.0.5 20 Apr 2026 (1 month ago)
7.1.0-RC1 20 Apr 2026 (1 month ago)
6.5.9 16 Mar 2026 (2 months ago)
7.0.4 16 Mar 2026 (2 months ago)

All Releases

Spring Security support lifecycle 2022 2024 2026 2028 2030 2032 7.1 (pre-release) Version: 7.1 Status: Supported End of OSS support: 2026-05 to 2027-06-30 Version: 7.1 Status: Supported End of enterprise support: 2027-06-30 to 2028-06-30 7.0 Version: 7.0 Status: Supported End of OSS support: 2025-11-17 to 2026-12-31 Version: 7.0 Status: Supported End of enterprise support: 2026-12-31 to 2027-12-31 6.5 Version: 6.5 Status: Supported End of OSS support: 2025-05-19 to 2026-06-30 Version: 6.5 Status: Supported End of enterprise support: 2026-06-30 to 2032-06-30 6.4 Version: 6.4 Status: EOL End of OSS support: 2024-11-18 to 2025-12-31 Version: 6.4 Status: Supported End of enterprise support: 2025-12-31 to 2026-12-31 6.3 Version: 6.3 Status: EOL End of OSS support: 2024-05-20 to 2025-06-30 Version: 6.3 Status: Supported End of enterprise support: 2025-06-30 to 2026-06-30 6.2 Version: 6.2 Status: EOL End of OSS support: 2023-11-20 to 2024-12-31 Version: 6.2 Status: EOL End of enterprise support: 2024-12-31 to 2025-12-31 5.8 Version: 5.8 Status: EOL End of OSS support: 2022-11-21 to 2023-12-31 Version: 5.8 Status: Supported End of enterprise support: 2023-12-31 to 2029-06-30 5.7 Version: 5.7 Status: EOL End of OSS support: 2022-05-16 to 2023-06-30 Version: 5.7 Status: Supported End of enterprise support: 2023-06-30 to 2029-06-30 Today: 2026-05-21 Today End of OSS support End of enterprise support
VersionSupported
Java/Jakarta EE
Initial releaseLatest releaseEnd of
OSS support
End of
enterprise support
7.1Java 17+
Jakarta EE 9+ (Servlet 6.0+)
-7.1.0-RC1
20 Apr 2026
(1 month ago)
30 Jun 2027
(Ends in 1 year, 1 month)
30 Jun 2028
(Ends in 2 years, 1 month)
7.0Java 17+
Jakarta EE 9+ (Servlet 6.0+)
7.0.0
17 Nov 2025
(6 months ago)
7.0.5
20 Apr 2026
(1 month ago)
31 Dec 2026
(Ends in 7 months)
31 Dec 2027
(Ends in 1 year, 7 months)
6.5Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.5.0
19 May 2025
(1 year ago)
6.5.10
20 Apr 2026
(1 month ago)
30 Jun 2026
(Ends in 1 month)
30 Jun 2032
(Ends in 6 years, 1 month)
6.4Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.4.0
18 Nov 2024
(1 year ago)
6.4.13
17 Nov 2025
(6 months ago)
31 Dec 2025
(Ended 4 months ago)
31 Dec 2026
(Ends in 7 months)
6.3Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.3.0
20 May 2024
(2 years ago)
6.3.10
16 Jun 2025
(11 months ago)
30 Jun 2025
(Ended 10 months ago)
30 Jun 2026
(Ends in 1 month)
6.2Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.2.0
20 Nov 2023
(2 years ago)
6.2.8
18 Nov 2024
(1 year ago)
31 Dec 2024
(Ended 1 year, 4 months ago)
31 Dec 2025
(Ended 4 months ago)
6.1Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.1.0
15 May 2023
(3 years ago)
6.1.9
15 Apr 2024
(2 years ago)
30 Jun 2024
(Ended 1 year, 10 months ago)
30 Jun 2025
(Ended 10 months ago)
6.0Java 17+
Jakarta EE 9+ (Servlet 5.0+)
6.0.0
21 Nov 2022
(3 years ago)
6.0.8
16 Oct 2023
(2 years ago)
31 Dec 2023
(Ended 2 years, 4 months ago)
31 Dec 2024
(Ended 1 year, 4 months ago)
5.8Java 8+
Servlet 4.0+
5.8.0
21 Nov 2022
(3 years ago)
5.8.16
18 Nov 2024
(1 year ago)
31 Dec 2023
(Ended 2 years, 4 months ago)
30 Jun 2029
(Ends in 3 years, 1 month)
5.7Java 8+
Servlet 3.0+
5.7.0
16 May 2022
(4 years ago)
5.7.14
18 Nov 2024
(1 year ago)
30 Jun 2023
(Ended 2 years, 10 months ago)
30 Jun 2029
(Ends in 3 years, 1 month)
5.6Java 8+
Servlet 3.0+
5.6.0
15 Nov 2021
(4 years ago)
5.6.12
17 Jul 2023
(2 years ago)
30 Nov 2022
(Ended 3 years, 5 months ago)
29 Feb 2024
(Ended 2 years, 2 months ago)
5.5Java 8+
Servlet 3.0+
5.5.0
17 May 2021
(5 years ago)
5.5.8
18 May 2022
(4 years ago)
31 May 2022
(Ended 3 years, 11 months ago)
31 Aug 2023
(Ended 2 years, 8 months ago)
5.4Java 8+
Servlet 3.0+
5.4.0
09 Sep 2020
(5 years ago)
5.4.11
20 Mar 2023
(3 years ago)
30 Nov 2021
(Ended 4 years, 5 months ago)
28 Feb 2023
(Ended 3 years, 2 months ago)
5.3Java 8+
Servlet 3.0+
5.3.0
04 Mar 2020
(6 years ago)
5.3.13
20 Dec 2021
(4 years ago)
31 May 2021
(Ended 4 years, 11 months ago)
31 Aug 2022
(Ended 3 years, 8 months ago)
5.2Java 8+
Servlet 3.0+
5.2.0
30 Sep 2019
(6 years ago)
5.2.15
20 Dec 2021
(4 years ago)
31 Oct 2020
(Ended 5 years, 6 months ago)
31 Jan 2022
(Ended 4 years, 3 months ago)
5.1Java 8+
Servlet 3.0+
5.1.0
21 Sep 2018
(7 years ago)
5.1.13
07 Oct 2020
(5 years ago)
31 Oct 2019
(Ended 6 years, 6 months ago)
31 Jan 2021
(Ended 5 years, 3 months ago)
5.0Java 8+
Servlet 3.0+
5.0.0
27 Nov 2017
(8 years ago)
5.0.19
07 Oct 2020
(5 years ago)
31 Mar 2019
(Ended 7 years, 1 month ago)
30 Jun 2020
(Ended 5 years, 10 months ago)
4.2Java 8+
Servlet 2.5+
4.2.0
09 Nov 2016
(9 years ago)
4.2.20
09 Dec 2020
(5 years ago)
31 Aug 2019
(Ended 6 years, 8 months ago)
30 Nov 2020
(Ended 5 years, 5 months ago)

How Does Spring Security Handle Version Support?

Spring Security is an open-source security framework maintained by Broadcom (formerly VMware Tanzu), serving as the de facto standard for authentication and authorization in Spring-based Java applications. Each minor version receives at least 12 months of OSS support, and each major version line is covered for at least 3 years -- provided you stay on a supported minor.

Support is split into two phases: active OSS support (bug fixes, security patches, dependency updates published freely to Maven Central) and a post-OSS window where only critical security issues may be addressed under commercial enterprise agreements. After both windows close, the branch is officially end-of-life.

Support Phase Duration What You Get
OSS Support At least 12 months per minor Bug fixes, security patches, dependency upgrades -- free via Maven Central
Enterprise Support Extended period via Tanzu Spring subscription Critical and security-only patches beyond OSS window
End of Life After both phases close No patches of any kind; upgrade required

Spring Security's EOL timing is intentionally tied to the broader Spring ecosystem: a branch reaches end-of-life when either its aligned Spring Framework minor or its corresponding Spring Boot minor goes EOL -- whichever applies first. This means staying current with Spring Boot is the most reliable way to stay within a supported Spring Security window. Refer to the release table above for End of OSS support and End of enterprise support dates for each branch.

References: Spring Security official support page -- Spring Security Versions wiki

What Are the Real Risks of Running an Unsupported Spring Security Version?

Running an unsupported Spring Security version means authentication and authorization vulnerabilities -- CVEs in OAuth2 filters, CSRF handling, session management -- will not receive patches from the Spring team.

Spring Security sits at the boundary between your application and every incoming request. A known, unpatched vulnerability in that layer is directly exploitable, not a theoretical concern. Attackers actively scan for applications exposing outdated Spring stacks, and CVE databases publish the exact affected versions.

Beyond active exploits, unsupported branches accumulate dependency drift. Transitive dependencies -- Nimbus JOSE+JWT, Bouncy Castle, Reactor -- continue releasing fixes independently. An EOL Spring Security branch cannot incorporate those updates, leaving your dependency tree increasingly mismatched with the security-patched versions of its own dependencies.

Framework-level risks are also a factor: integrating newer Spring Boot features, migrating to Jakarta EE namespaces, or adopting Spring Authorization Server all require a supported Security version. Staying on an EOL branch gradually closes off upgrade paths elsewhere in your stack.

What Happens After Spring Security OSS Support Ends?

Once OSS support ends, the branch stops receiving public patch releases to Maven Central. No bug fixes, no dependency bumps, no security patches -- the last published artifact is the final one from the open-source team.

The branch is not immediately marked end-of-life. There is a window -- visible in the release table above under End of enterprise support -- where Broadcom's Tanzu Spring commercial subscription covers critical and security-only fixes for paying customers. These patches are distributed through a separate commercial channel, not the public Maven repository.

Once the enterprise window also closes, the version is officially end-of-life. At that point, any CVEs discovered are publicly disclosed with no upstream fix coming from the Spring team for that branch.

Migration Direction

Spring Security versioning is closely aligned with Spring Boot, so the upgrade path is typically straightforward: bump to the current Spring Boot minor and the corresponding Spring Security version follows. The Spring team publishes migration guides for each major version boundary (for example, moving to the 6.x line required adapting to Jakarta EE namespaces and updated method security APIs). For teams on older major lines, upgrading Spring Boot is the recommended starting point -- it pulls the correct Security version transitively and surfaces incompatibilities through Boot's managed dependency BOM.

How To Check Your Spring Security Version

The fastest way is to inspect your build file or the runtime classpath directly.

Maven

mvn dependency:tree | grep spring-security-core

Gradle

./gradlew dependencies --configuration runtimeClasspath | grep spring-security-core

Spring Boot Actuator (runtime)

If the info or env actuator endpoint is enabled, the resolved Spring Security version appears in the dependency management output. You can also add a quick check in code:

import org.springframework.security.core.SpringSecurityCoreVersion;

System.out.println(SpringSecurityCoreVersion.getVersion());

Via Spring Boot BOM

If you are on Spring Boot, the Security version is managed for you. Check the effective BOM version with:

mvn help:effective-pom | grep spring-security

Once you have the version string, cross-reference it with the release table above to confirm whether it falls within the OSS support or enterprise support window -- or is already end-of-life.

FAQ -- Spring Security Support & End of Life

Q1: How long is each Spring Security version supported?
Each minor version of Spring Security receives at least 12 months of OSS support, covering bug fixes, security patches, and dependency updates. Major version lines are covered for at least 3 years total, but only if you stay on a supported minor within that line. After OSS support ends, enterprise support extends coverage further -- exact dates are listed in the release table above.

Q2: Does Spring Security have Long Term Support (LTS) releases?
Spring Security does not publish a separately labeled LTS release the way some runtimes do. Instead, certain Spring Boot versions -- those designated as LTS within the Spring Boot lifecycle -- carry a longer effective support window for the entire Spring portfolio, including Security. If you need the longest possible support window, align your Spring Security version with a Spring Boot LTS release.

Q3: What is the difference between OSS support and enterprise support for Spring Security?
OSS support means patches are published publicly to Maven Central at no cost. Enterprise support, available through a Broadcom Tanzu Spring commercial subscription, extends patch delivery beyond the OSS window for critical and security-only fixes. The patches are delivered through a private channel rather than Maven Central. As shown in the release table above, each branch lists both cutoff dates separately.

Q4: How do I know if my Spring Security version is still supported?
Check the End of OSS support column in the release table above for your branch. If today's date is past that column, you are outside the free support window. If it also exceeds the End of enterprise support date, the branch is fully end-of-life. Running mvn dependency:tree or ./gradlew dependencies gives you the exact resolved version to look up.

Q5: What should I do when my Spring Security version reaches end of life?
Upgrade to the current stable Spring Boot release -- Spring Security's version is managed transitively through the Boot BOM, so updating Boot is the most reliable upgrade path. For major version jumps (for example, crossing into the 6.x line), review the official Spring Security migration guide for API changes around method security and Jakarta EE namespaces. In practice, most teams find the Boot-driven upgrade path far smoother than trying to upgrade Spring Security in isolation.