7222 Commits

Author SHA1 Message Date
Rob Winch
28537fa3b6 WebClientReactiveClientCredentialsTokenResponseClient
Fixes: gh-5607
2018-09-07 08:53:35 -05:00
Rob Winch
89f2874bff ServerOAuth2AuthorizedClientExchangeFilterFunction clientRegistrationId
You can now provide the clientRegistrationId and
ServerOAuth2AuthorizedClientExchangeFilterFunction will look up the authorized client automatically.

Issue: gh-4921
2018-09-07 08:52:35 -05:00
Rob Winch
5bcbb1c40f ServerOAuth2AuthorizedClientExchangeFilterFunction uses ServerOAuth2AuthorizedClientRepository
Issue: gh-4921
2018-09-07 08:52:18 -05:00
Rob Winch
07b6699fd9 ServerWebExchangeReactorContextWebFilter
Fixes: gh-5779
2018-09-07 08:49:27 -05:00
Josh Cummings
65c81ce952
Make JwtReactiveAuthenticationManager final 2018-09-06 13:46:18 -06:00
Joe Grandja
057587ef29 ClientRegistration contains Provider Configuration Metadata
Fixes gh-5540
2018-09-05 17:01:23 -04:00
Sola
c60fcf263e provide test for custom principal extractor config
Signed-off-by: Sola <dev@sola.love>
2018-09-05 15:51:14 -05:00
Sola
2980f96b55 Allow PrincipalExtractor to be customized.
Signed-off-by: Sola <dev@sola.love>
2018-09-05 15:51:14 -05:00
Josh Cummings
932ea245fb AuthenticationManager for OAuth2ResourceServerSpec
This makes the AuthenticationManager used by the OAuth2 Resource
Server configurable, focusing at this point on the Jwt use case.

Fixes: gh-5750
2018-09-05 09:19:11 -05:00
Joe Grandja
dfd572a4d2 Polish 2018-09-05 07:59:00 -05:00
Joe Grandja
3b480a3a05 Provide RestOperations in CustomUserTypesOAuth2UserService
Fixes gh-5602
2018-09-05 07:59:00 -05:00
Joe Grandja
4a8c95a3e8 Provide RestOperations in DefaultOAuth2UserService
Fixes gh-5600
2018-09-05 07:59:00 -05:00
Josh Cummings
25d1f49d84
Remove Resource Server's Session Policy Config
Resource Server doesn't need to set the session policy for the
application to STATELESS since it can rely on the
SessionManagementFilter ignoring token's annotated with @Transient,
which a JwtAuthenticationToken is.

Fixes: gh-5759
2018-09-04 14:55:40 -06:00
Johnny Lim
5141dacd95 Upgrade to Gradle Wrapper 4.10
Closes gh-5748
2018-09-04 14:11:15 -05:00
Rob Winch
5dd55d4936 Ensure NamingException.resolvedObj is Serializable
Fixes: gh-5378
2018-09-04 11:04:26 -05:00
Josh Cummings
8510e9a285 Reactive Resource Server insufficient_scope
This introduces an implementation of ServerAccessDeniedHandler that is
compliant with the OAuth 2.0 spec for insufficent_scope errors.

Fixes: gh-5705
2018-08-31 10:33:11 -05:00
Josh Cummings
1c74706232 Delegating ServerAccessDeniedHandler by exchange
Fixes: gh-5747
2018-08-31 10:33:11 -05:00
Joe Grandja
8e615d0fee Re-factor DefaultClientCredentialsTokenResponseClient
Fixes gh-5735
2018-08-27 15:10:17 -05:00
Rob Winch
713e1e3356 BearerTokenServerAuthenticationEntryPoint waits for subscriber
Fixes: gh-5742
2018-08-27 14:26:45 -05:00
Vedran Pavic
362c2ef1f2 Force snapshot repo in snapshot stage build 2018-08-27 13:35:58 -05:00
Joe Grandja
229b69dd35 Add DefaultAuthorizationCodeTokenResponseClient
Fixes gh-5547
2018-08-27 12:44:19 -04:00
Vedran Pavic
f7cb53e9bd Upgrade spring-build-conventions to 0.0.18.RELEASE 2018-08-27 10:45:35 -05:00
Vedran Pavic
cb0ba58b58 Fix WhitespaceAfterCheck Checkstyle check 2018-08-27 10:45:35 -05:00
Jason Zhekov
439538477a Add missing space in namespace.adoc 2018-08-27 10:43:53 -05:00
Johnny Lim
88181c31f1 Polish ActiveDirectoryLdapAuthenticationProviderTests
This commit polishes ActiveDirectoryLdapAuthenticationProviderTests.contextEnvironmentPropertiesUsed() by:

- Adding fail() to prevent from going through an unexpected path.
- Asserting that the root cause is an instance of ClassNotFoundException as the current code doesn't seem to right.
2018-08-26 21:31:39 -05:00
Rob Winch
f5ad4ba0fa ServletOAuth2AuthorizedClientExchangeFilterFunction support client_credentials
Fixes: gh-5639
2018-08-24 11:33:02 -05:00
Rob Winch
2d497c7b0f Remove OAuth2ExchangeFilterFunctions
Fixes: gh-5734
2018-08-24 11:27:59 -05:00
Rob Winch
1640a1f462 Polish ServerAuthenticationConverter
Fix package tangles

Issue: gh-5338
2018-08-24 09:44:27 -05:00
Josh Cummings
68d836d508 Reactive Resource Server Csrf Bypass
This makes requests identified as bearer token requests skip the csrf
filter.

Fixes: gh-5710
2018-08-24 09:44:01 -05:00
Rob Winch
820fb7d828 Polish formatting ServerHttpSecurity JwtSpec
Fixes: gh-5728
2018-08-23 15:12:19 -05:00
Josh Cummings
cba2444e1a ServerHttpSecurity ReactiveJwtDecoder discovery
This makes so that WebFlux OAuth 2.0 Resource Server configuration
will pick up a ReactiveJwtDecoder exposed as a bean.

Fixes: gh-5720
2018-08-23 15:12:14 -05:00
Josh Cummings
0fdc081ab5 Add unit tests
Added some unit tests around some untested parts of the code that I
will be touching for this issue.

Issue: gh-5720
2018-08-23 15:11:40 -05:00
Rob Winch
7c14c6e48f Update to Spring Boot 2.1.0.M2
Fixes: gh-5727
2018-08-23 13:00:22 -05:00
Josh Cummings
416a276436
Expose Default Reactive CsrfProtectionMatcher
Make so that users can augment the default protection logic with
their own.

Fixes: gh-5725
2018-08-22 13:02:02 -06:00
Rob Winch
4ddaac3b8e Fix settings.gradle on Windows
Fixes: gh-5724
2018-08-22 10:21:41 -05:00
Joe Grandja
d7bd5c0acc Remove spring.factories from oauth2login-webflux sample
Fixes gh-5723
2018-08-22 10:21:36 -04:00
Joe Grandja
ff6e1232c8 Flatten HttpSecurity.oauth2()
Fixes gh-5715
2018-08-22 05:58:04 -04:00
Joe Grandja
0f89e59707 Simplified oauth2().client() DSL
Fixes gh-5662
2018-08-22 04:45:35 -04:00
Rob Winch
d7dde707a2 Jenkinsfile uses Spring 5.1.0.BUILD-SNAPSHOT
Previously 5.+ was used. This caused problems because Spring Framework
does not use semantic versioning for milestone and rc snapshots. For
example, Spring uses 5.1.0.BUILD-SNAPSHOT, 5.1.0.M1, and then goes back
to 5.1.0.BUILD-SNAPSHOT.

Fixes: gh-5721
2018-08-21 15:59:03 -05:00
Rob Winch
0dc80aed40 Flatten ServerHttpSecurity.oauth2()
Fixes: gh-5712
2018-08-21 15:48:41 -05:00
Josh Cummings
59cdfc7d6e ReactiveJwtDecoder via OIDC Provider Configuration
A reactive static builder for constructing and configuring a
ReactiveJwtDecoder via an issuer that supports the OIDC Provider
Configuration spec.

Fixes: gh-5649
2018-08-21 15:09:18 -05:00
Josh Cummings
01443e35b4 Reactive Jwt Validation
This allows a user to customize the Jwt validation steps that
NimbusReactiveJwtDecoder will take for each Jwt.

Fixes: gh-5650
2018-08-21 15:06:05 -05:00
Rob Winch
53652584b2 ResourceServerSpec->OAuth2ResourceServerSpec
Fixes: gh-5713
2018-08-21 14:51:22 -05:00
Joe Grandja
c3e19e29b5 Remove authorizationEndpoint.baseUri in OAuth2ClientConfigurer
Fixes gh-5661
2018-08-21 15:33:58 -04:00
Josh Cummings
b11e9ed317
Fix Javadoc Typo
NimbusReactiveJwtDecoder incorrectly referred in its class-level doc
as being an implementation of JwtDecoder. This has been corrected to
say ReactiveJwtDecoder.

Fixes: gh-5711
2018-08-21 12:21:23 -06:00
Rob Winch
ec01657625 Polish ActiveDirectoryLdapAuthenticationProvider custom environment
Fixes: gh-5674
2018-08-21 12:14:43 -05:00
Yuri Konotopov
669b0ba583 ActiveDirectoryLdapAuthenticationProvider custom environment
This change allows to inject custom environment properties for directory
context initialization.

Fixes: gh-2312
2018-08-21 12:14:36 -05:00
Rob Winch
f5701b5fe0 Fix OptimizeAntPathRequestMatcher
Previously the logic for determining if the pathInfo should be appended
was inverted.

This correctly concatenates url + pathInfo if url is a non empty String.

Fixes: gh-5473
2018-08-21 11:52:55 -05:00
Christoph Dreis
4ccd2f7ebd Optimize AntPathRequestMatcher.getRequestPath() 2018-08-21 11:46:37 -05:00
Rob Winch
a08fa22b27 Update to oauth2-oidc-sdk:5.64.4
Fixes: gh-5704
2018-08-20 14:03:56 -05:00