Go to file
Robert Winch e7203bf838
CodeQL Advanced / codeql-analysis-call (push) Waiting to run Details
CI / Build (25, ubuntu-latest) (push) Waiting to run Details
CI / Build (25, windows-latest) (push) Waiting to run Details
CI / Deploy Artifacts (push) Blocked by required conditions Details
CI / Deploy Schema (push) Blocked by required conditions Details
CI / Perform Release (push) Blocked by required conditions Details
CI / Send Notification (push) Blocked by required conditions Details
Deploy Docs / build (push) Waiting to run Details
Null safety via JSpecify spring-security-acl
Closes gh-18401
2026-01-22 14:26:26 -06:00
.github Remove 6.4.x from antora ui updates 2026-01-16 15:16:34 -06:00
.idea Fix checkstyle rules could not be parsed 2020-11-23 14:33:18 -05:00
.vscode Ensure Cursor imports Spring Security 2026-01-13 17:01:21 -05:00
access Fix javadoc warning in spring-security-access 2026-01-21 16:34:58 -06:00
acl Null safety via JSpecify spring-security-acl 2026-01-22 14:26:26 -06:00
aspects Fix Gradle 9.0 deprecations 2026-01-12 13:43:16 -06:00
bom fix bom 2021-05-17 22:29:45 -05:00
buildSrc doclint -missing 2026-01-16 21:55:49 -06:00
cas fail build on javadoc warnings. 2026-01-21 16:39:08 -06:00
config Fix formatting in HttpSecurity.java documentation 2026-01-21 16:43:03 -06:00
core Run ./gradlew foramt 2026-01-21 16:08:04 -06:00
crypto Fail build on Javadoc warnings in crypto module 2026-01-21 16:41:34 -06:00
data Remove javadoc warnings for spring-security-data 2026-01-21 16:45:45 -06:00
dependencies Add Jackson 3 BOM 2025-10-19 17:03:19 -05:00
docs Externalize java-toolchain configuration 2026-01-16 16:54:00 -06:00
etc Remove JdbcOAuth2AuthorizationService.Mapper 2025-10-19 17:03:19 -05:00
git/hooks Update to 7.1.0-SNAPSHOT 2026-01-12 13:37:32 -06:00
gradle Bump com.fasterxml.jackson:jackson-bom from 2.20.1 to 2.20.2 2026-01-20 03:05:21 +00:00
itest Externalize java-toolchain configuration 2026-01-16 16:54:00 -06:00
javascript Bump js-yaml from 4.1.0 to 4.1.1 in /javascript 2025-11-21 10:27:09 -06:00
kerberos Null safety via JSpecify spring-security-kerberos-test 2026-01-21 17:53:12 -06:00
ldap Apply plugin javadoc-warnings-error - no javadoc issues found 2026-01-21 16:56:36 -06:00
messaging Apply plugin javadoc-warnings-error - no javadoc issues found 2026-01-21 16:54:53 -06:00
oauth2 Enable javadoc-warnings-error for oauth2-resource-server 2026-01-21 15:49:55 -06:00
rsocket Update to Reactor 2025.0.0-SNAPSHOT 2025-10-13 11:16:27 -05:00
saml2/saml2-service-provider Fix typos 2026-01-08 13:35:43 -06:00
scripts Add Build Updates section to generated release notes 2024-05-09 13:40:25 -05:00
taglibs Remove @NullUnmarked 2026-01-21 14:11:25 -06:00
test Remove @NullUnmarked 2026-01-21 14:11:25 -06:00
web Remove @NullUnmarked 2026-01-21 14:11:25 -06:00
webauthn Remove @NullUnmarked 2026-01-21 14:11:25 -06:00
.editorconfig Fixed link in .editorconfig 2021-10-13 15:36:10 -06:00
.gitattributes Add .serialized suffix and consider them as binary in Git 2024-01-05 15:14:22 -03:00
.gitignore Add .kotlin/ to .gitignore 2025-10-19 17:03:19 -05:00
.sdkmanrc Update to JDK 25 (release = 17) 2026-01-16 11:25:59 -06:00
CONTRIBUTING.adoc Polish Stream Advice 2025-06-20 14:01:19 -06:00
LICENSE.txt Add LICENSE.txt 2020-04-15 16:44:13 -05:00
README.adoc Add What's New Link to Landing Pages 2024-11-18 15:51:25 -07:00
RELEASE.adoc Polish RELEASE.adoc 2024-05-06 16:04:35 -05:00
build.gradle Externalize java-toolchain configuration 2026-01-16 16:54:00 -06:00
class_mapping_from_2.0.x.txt
gradle.properties Next development version 2026-01-19 15:49:35 +00:00
gradlew Bump Gradle Wrapper from 8.13 to 8.14. 2025-04-29 14:48:42 -06:00
gradlew.bat Update to Gradle 9.2.1 2026-01-16 10:48:28 -06:00
notice.txt URL Cleanup 2019-03-19 23:53:23 -05:00
settings.gradle Bump io.spring.develocity.conventions from 0.0.24 to 0.0.25 2026-01-21 03:05:22 +00:00

README.adoc

image::https://badges.gitter.im/Join%20Chat.svg[Gitter,link=https://gitter.im/spring-projects/spring-security?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge]

image:https://github.com/spring-projects/spring-security/actions/workflows/continuous-integration-workflow.yml/badge.svg?branch=main["Build Status", link="https://github.com/spring-projects/spring-security/actions/workflows/continuous-integration-workflow.yml"]

image:https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A["Revved up by Develocity", link="https://ge.spring.io/scans?search.rootProjectNames=spring-security"]

= Spring Security

Spring Security provides security services for the https://docs.spring.io[Spring IO Platform]. Spring Security 6.0 requires Spring 6.0 as
a minimum and also requires Java 17.

For a detailed list of features and access to the latest release, please visit https://spring.io/projects[Spring projects].

== Code of Conduct
Please see our https://github.com/spring-projects/.github/blob/main/CODE_OF_CONDUCT.md[code of conduct]

== Downloading Artifacts
See https://docs.spring.io/spring-security/reference/getting-spring-security.html[Getting Spring Security] for how to obtain Spring Security.

== Documentation
Be sure to read the https://docs.spring.io/spring-security/reference/[Spring Security Reference].
Extensive JavaDoc for the Spring Security code is also available in the https://docs.spring.io/spring-security/site/docs/current/api/[Spring Security API Documentation].

You may also want to check out https://docs.spring.io/spring-security/reference/whats-new.html[what's new in the latest release].

== Quick Start
See https://docs.spring.io/spring-security/reference/servlet/getting-started.html[Hello Spring Security] to get started with a "Hello, World" application.

== Building from Source
Spring Security uses a https://gradle.org[Gradle]-based build system.
In the instructions below, https://vimeo.com/34436402[`./gradlew`] is invoked from the root of the source tree and serves as
a cross-platform, self-contained bootstrap mechanism for the build.

=== Prerequisites
https://docs.github.com/en/get-started/quickstart/set-up-git[Git] and the https://www.oracle.com/java/technologies/downloads/#java17[JDK17 build].

Be sure that your `JAVA_HOME` environment variable points to the `jdk-17` folder extracted from the JDK download.

=== Check out sources
[indent=0]
----
git clone git@github.com:spring-projects/spring-security.git
----

=== Install all `spring-*.jar` into your local Maven repository.

[indent=0]
----
./gradlew publishToMavenLocal
----

=== Compile and test; build all JARs, distribution zips, and docs

[indent=0]
----
./gradlew build
----

The reference docs are not currently included in the distribution zip.
You can build the reference docs for this branch by running the following command:

----
./gradlew :spring-security-docs:antora
----

That command publishes the docs site to the `_docs/build/site_` directory.
The https://github.com/spring-projects/spring-security/tree/docs-build[playbook branch] describes how to build the reference docs in detail.

Discover more commands with `./gradlew tasks`.

== Getting Support
Check out the https://stackoverflow.com/questions/tagged/spring-security[Spring Security tags on Stack Overflow].
https://spring.io/support[Commercial support] is available too.

== Contributing
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request[Pull requests] are welcome; see the https://github.com/spring-projects/spring-security/blob/main/CONTRIBUTING.adoc[contributor guidelines] for details.

== License
Spring Security is Open Source software released under the
https://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].