Spring Security
Go to file
Josh Cummings 37a2812d1a
Mimic Annotation Fallback Logic
For backward compatibility, this commit changes the annotation traversal
logic to match what is found in PrePostAnnotationSecurityMetadataSource.

This reverts gh-13783 which is a feature that unfortunately regressess
pre-existing behavior like that found in gh-15352. As such, that
functionality has been removed.

Issue gh-15352
2024-07-31 16:17:42 -06:00
.github Merge branch '6.3.x' 2024-07-31 17:04:36 -05:00
.idea Fix checkstyle rules could not be parsed 2020-11-23 14:33:18 -05:00
.vscode Make eclipse/vscode project import work 2023-06-05 13:34:30 -06:00
acl Remove unused import 2024-05-24 14:13:34 -03:00
aspects Add AnnotationSythesizer API 2024-07-18 09:55:17 -06:00
bom fix bom 2021-05-17 22:29:45 -05:00
buildSrc Merge branch '5.8.x' into 6.2.x 2024-06-28 09:32:25 -03:00
cas Add setter method for userDetailsChecker in CasAuthenticationProvider(#10277) 2024-05-24 14:00:56 -03:00
config Mimic Annotation Fallback Logic 2024-07-31 16:17:42 -06:00
core Mimic Annotation Fallback Logic 2024-07-31 16:17:42 -06:00
crypto Merge branch '6.1.x' into 6.2.x 2024-04-26 17:21:14 -06:00
data Apply updated Code Style 2023-09-29 11:44:32 -03:00
dependencies Upgrade to Spring Framework 6.2.0-M4 2024-06-18 14:07:05 -03:00
docs Merge branch '6.3.x' 2024-07-29 15:10:50 -06:00
etc Merge branch '5.8.x' into 6.2.x 2024-07-31 15:48:44 -06:00
git/hooks Add pre-push hook 2024-06-11 13:55:57 -03:00
gradle Bump org.jetbrains.kotlin:kotlin-bom from 1.9.24 to 1.9.25 2024-07-21 21:03:44 -07:00
itest Merge branch '6.1.x' 2023-09-29 11:47:38 -03:00
ldap Merge branch '6.3.x' 2024-07-29 15:06:41 -06:00
messaging Merge branch '6.2.x' into 6.3.x 2024-05-31 19:02:31 -05:00
oauth2 Merge branch '6.3.x' 2024-07-22 15:34:34 -06:00
rsocket Merge branch '6.1.x' 2023-09-29 11:47:38 -03:00
saml2/saml2-service-provider Fix Formatting 2024-07-29 14:03:35 -07:00
scripts Add Build Updates section to generated release notes 2024-05-09 13:40:25 -05:00
taglibs Prepare for Spring Security 6.4 2024-05-24 11:41:28 -03:00
test Polish gh-15012 2024-06-03 17:02:38 -05:00
web Publish Constants for Firewall Header and Parameter Predicates 2024-07-18 17:24:38 -07: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 Use antora-extensions 1.10.0 2024-04-19 14:16:02 -05:00
.sdkmanrc Update java version to 17.0.3-tem 2022-06-14 14:43:34 -05:00
CONTRIBUTING.adoc Update documentation policy 2024-04-23 08:12:24 -06:00
LICENSE.txt Add LICENSE.txt 2020-04-15 16:44:13 -05:00
README.adoc Fixing URL on README 2024-07-09 07:25:58 -07:00
RELEASE.adoc Polish RELEASE.adoc 2024-05-06 16:04:35 -05:00
build.gradle Merge branch '6.3.x' 2024-06-27 14:36:03 -03:00
class_mapping_from_2.0.x.txt SEC-1148: Simple classname mapping from 2.0 to 3.0 2009-12-02 22:44:30 +00:00
gradle.properties Next development version 2024-07-15 19:29:56 +00:00
gradlew Bump Gradle Wrapper from 8.3 to 8.4 2023-10-10 08:16:18 -03:00
gradlew.bat Bump Gradle Wrapper from 8.5 to 8.6 2024-02-05 08:59:10 -07:00
notice.txt URL Cleanup 2019-03-19 23:53:23 -05:00
settings.gradle Bump com.gradle.develocity from 3.17.5 to 3.17.6 2024-07-22 21:06:35 -07: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].

== 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].