Go to file
Dávid Kováč af1c96b425
Simplify OAuth 2.0 Introspection Attribute Retrieval
In order to simplify retrieving of OAuth 2.0 Introspection specific
attributes, OAuth2IntrospectionClaimAccessor interface was introduced
and also new OAuth2AuthenticatedPrincipal implementing this new
interface (OAuth2IntrospectionAuthenticatedPrincipal).

Also DefaultOAuth2AuthenticatedPrincipal was replaced by
OAuth2IntrospectionAuthenticatedPrincipal in cases where OAuth 2.0
Introspection is performed (NimbusOpaqueTokenIntrospector,
NimbusReactiveOpaqueTokenIntrospector).

DefaultOAuth2AuthenticatedPrincipal can be still used by applications
that introspected the token without OAuth 2.0 Introspection.

OAuth2IntrospectionAuthenticatedPrincipal will also be used as a
default principal in tests where request is post-processed/mutated
by OpaqueTokenRequestPostProcessor/OpaqueTokenMutator.

Closes gh-6489
2020-07-09 17:26:13 -06:00
.github Change pipeline to run for all base branches 2020-06-17 16:05:41 -05:00
.idea
acl Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
aspects Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
bom
buildSrc Replace VersionsResourceTasks with WriteProperties 2020-03-13 13:26:54 -05:00
cas Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
config Allow disabling headers in Kotlin DSL 2020-07-08 10:55:01 +02:00
core update comments 2020-07-07 17:11:47 -05:00
crypto Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
data Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
docs Add Kotlin expression-based authorization 2020-07-06 13:13:57 +02:00
etc Replace whitelist with allowlist 2020-06-10 11:49:21 -05:00
gradle Update to Gradle 6.4.1 2020-05-27 16:12:23 -06:00
itest Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
ldap Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
messaging Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
oauth2 Simplify OAuth 2.0 Introspection Attribute Retrieval 2020-07-09 17:26:13 -06:00
openid Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
remoting Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
rsocket Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
saml2/saml2-service-provider Use Spec Language in RelyingPartyRegistration 2020-07-07 17:12:39 -06:00
samples Use Spec Language in RelyingPartyRegistration 2020-07-07 17:12:39 -06:00
scripts Add custom release notes configuration file 2019-12-31 14:19:40 -05:00
taglibs Revert "Lock Dependency Versions for 5.4.0-M2" 2020-07-01 13:11:50 -06:00
test Simplify OAuth 2.0 Introspection Attribute Retrieval 2020-07-09 17:26:13 -06:00
web Updated SimpleSavedRequest#getMethod 2020-07-08 14:47:51 -06:00
.editorconfig Use UTF-8 for Java sources and XML 2019-08-14 08:47:00 -05:00
.gitignore Ignore Lock Files 2020-02-07 13:59:05 -06:00
CONTRIBUTING.adoc Use `Closes gh-<number>` 2020-06-11 15:34:35 -05:00
Jenkinsfile Use reactorVersion 20+ for snapshot tests 2020-06-19 10:41:00 -05:00
LICENSE.txt Add LICENSE.txt 2020-04-15 16:44:13 -05:00
README.adoc Remove Travis pipeline and README badge 2020-06-17 16:07:32 -05:00
build.gradle Update to spring-build-conventions:0.0.33.RELEASE 2020-06-25 11:26:15 -05:00
class_mapping_from_2.0.x.txt
gradle.properties Next Development Version 2020-07-01 13:12:37 -06:00
gradlew Update to Gradle 6.1.1 2020-02-04 23:36:47 -06:00
gradlew.bat
notice.txt
settings.gradle Upgrade to Gradle Enterprise Plugin 3.2 2020-03-27 12:44:12 -05: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]

= Spring Security

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

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/master/CODE_OF_CONDUCT.md[code of conduct]

== Downloading Artifacts
See https://github.com/spring-projects/spring-framework/wiki/Downloading-Spring-artifacts[downloading Spring artifacts] for Maven repository information.

== Documentation
Be sure to read the https://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/[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
We recommend you visit https://docs.spring.io/spring-security/site/docs/current/reference/htmlsingle/[Spring Security Reference] and read the "Getting Started" page.

== 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://help.github.com/set-up-git-redirect[Git] and the https://www.oracle.com/technetwork/java/javase/downloads[JDK8 build].

Be sure that your `JAVA_HOME` environment variable points to the `jdk1.8.0` folder extracted from the JDK download.

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

=== Install all spring-\* jars into your local Maven cache
[indent=0]
----
./gradlew install
----

=== Compile and test; build all jars, distribution zips, and docs
[indent=0]
----
./gradlew build
----

Discover more commands with `./gradlew tasks`.
See also the https://github.com/spring-projects/spring-framework/wiki/Gradle-build-and-release-FAQ[Gradle build and release FAQ].

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

== Contributing
https://help.github.com/articles/creating-a-pull-request[Pull requests] are welcome; see the https://github.com/spring-projects/spring-security/blob/master/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].