Spring Security
Go to file
Rob Winch bf41d48718 HttpSessionOAuth2AuthorizationRequestRepository support distributed HttpSession
Previously HttpSessionOAuth2AuthorizationRequestRepository
getAuthorizationRequest attempted to update the state of HttpSession as
well as getting the Map of OAuth2AuthorizationRequest. This had a few
problems

- First it was confusing that a get method updated state
- It worked when the session was in memory, but would not work when the
  HttpSesson was persisted to an external store (i.e. Spring Session) since
  after updating the Map, there was no invocation to update

This commit cleans up the logic and ensures that the values are explicitly
set in the HttpSession so it works with a session persisted in an external
store.

Fixes: gh-5146
2018-03-20 22:14:48 -05:00
.github Remove the CLA confirmation from template 2016-06-13 13:20:22 -05:00
acl Use diamond type 2017-12-21 15:09:00 -06:00
aspects Use diamond type 2017-12-21 15:09:00 -06:00
bom Use spring-build-conventions Bom plugin 2018-01-09 11:27:34 -06:00
buildSrc Make MIN_SPRING_VERSION Dynamic 2018-03-16 13:53:40 -05:00
cas Authorities authenticate TestingAuthenticationToken 2018-03-09 13:21:47 -06:00
config Fix Javadoc Typo uses->use 2018-03-19 15:36:31 -05:00
core Delay lookup of managedVersions 2018-03-16 13:55:17 -05:00
crypto Fix: Typo in DelegatingPasswordEncoder's Javadoc 2018-01-30 10:07:49 -06:00
data Fix logback-test.xml 2017-08-17 16:42:01 -05:00
docs Extract appendix subsections 2018-03-09 16:34:46 -06:00
etc Apply Checkstyle EmptyStatementCheck module 2017-11-16 20:18:21 -06:00
gradle Add SNAPSHOTs tests to CI 2018-03-16 14:19:04 -05:00
itest Add StrictHttpFirewall 2018-01-24 11:06:08 -06:00
ldap Use diamond type 2017-12-21 15:09:00 -06:00
messaging Use diamond type 2017-12-21 15:09:00 -06:00
oauth2 HttpSessionOAuth2AuthorizationRequestRepository support distributed HttpSession 2018-03-20 22:14:48 -05:00
openid Use diamond type 2017-12-21 15:09:00 -06:00
remoting Use diamond type 2017-12-21 15:09:00 -06:00
samples HttpSessionOAuth2AuthorizationRequestRepository handle multiple OAuth2AuthorizationRequest per session 2018-03-20 22:14:48 -05:00
taglibs Fix Security version tests -> 5.1 2018-03-02 16:29:22 -05:00
test Fix ReactorContextTestExecutionListener with custom SecurityContext 2018-03-19 09:29:27 -05:00
web CookieClearingLogoutHandler adds uses contextPath + "/" 2018-03-19 16:51:22 -05:00
.editorconfig Improve EditorConfig file 2018-03-16 15:50:34 -05:00
.gitignore ignore s101 metadata 2017-10-26 19:22:39 -05:00
.travis.yml .travis continue on failure 2017-12-20 15:38:22 -06:00
CODE_OF_CONDUCT.adoc SEC-3209: Add Code of Conduct 2016-02-01 14:23:59 -06:00
CONTRIBUTING.md Advisory to avoid markdown in commit messages 2018-03-09 14:20:43 -06:00
Jenkinsfile Add SNAPSHOTs tests to CI 2018-03-16 14:19:04 -05:00
README.adoc Fix Travis build URL in README 2017-12-20 15:36:10 -06:00
build.gradle Update to spring-build-conventions:0.0.15.RELEASE 2018-02-27 16:23:49 -06: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 Update to Spring Boot 2.0.0.RELEASE 2018-03-09 09:46:38 -06:00
gradlew Update to Gradle 4.2 2017-09-22 10:00:49 -05:00
gradlew.bat Update to Gradle 3.5 2017-04-21 10:51:49 -05:00
license.txt Change to Apache License version 2.0. 2004-03-23 04:44:48 +00:00
notice.txt Broaden list of names used and correct URL. 2007-12-03 04:39:17 +00:00
settings.gradle Standardize Build 2017-04-21 10:55:05 -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]

image:https://travis-ci.org/spring-projects/spring-security.svg?branch=master["Build Status", link="https://travis-ci.org/spring-projects/spring-security"]

= Spring Security

Spring Security provides security services for the http://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 http://spring.io/projects[Spring projects].

== Code of Conduct
This project adheres to the Contributor Covenant link:CODE_OF_CONDUCT.adoc[code of conduct].
By participating, you  are expected to uphold this code. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

== 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 http://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 http://docs.spring.io/spring-security/site/docs/current/apidocs/[Spring Security API Documentation].

== Quick Start
We recommend you visit http://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 http://gradle.org[Gradle]-based build system.
In the instructions below, http://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
http://help.github.com/set-up-git-redirect[Git] and the http://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 http://stackoverflow.com/questions/tagged/spring-security[Spring Security tags on Stack Overflow].
http://spring.io/services[Commercial support] is available too.

== Contributing
http://help.github.com/send-pull-requests[Pull requests] are welcome; see the https://github.com/spring-projects/spring-security/blob/master/CONTRIBUTING.md[contributor guidelines] for details.

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