1435 Commits

Author SHA1 Message Date
Josh Cummings
6e7a181eac
Polish Authentication Factors
Issue gh-17933
2025-09-19 11:32:28 -06:00
Josh Cummings
758b35df9c
Add Factor Tests for Authentication Providers
Issue gh-17933
2025-09-19 11:32:27 -06:00
Josh Cummings
e8accd0499
Add Factory Authority When Authentication Succeeds
Issue gh-17933
2025-09-19 11:32:26 -06:00
Bernard Budano
02a948da81 Address reviewer requested changes
Closes gh-17806

Signed-off-by: Bernard Budano <bbudano@gmail.com>
2025-09-12 16:19:27 -05:00
Bernard Budano
8e3cf9677c Support @ClientRegistrationId at Class Level
Closes gh-17806

Signed-off-by: Bernard Budano <bbudano@gmail.com>
2025-09-12 16:19:27 -05:00
Joe Grandja
35f41f87d1 Temporarily fix integration tests
Issue gh-17880
2025-09-12 16:20:44 -04:00
Joe Grandja
098574c50e Remove redundant classes
Issue gh-17880
2025-09-12 16:20:43 -04:00
Joe Grandja
cc71be71e5 Move OAuth2AuthorizationServerConfigurer and OAuth2AuthorizationServerConfiguration
Issue gh-17880
2025-09-12 16:20:42 -04:00
Joe Grandja
b5a4cdc9eb Polish OAuth2AuthorizationServerJackson2Module
Issue gh-17880
2025-09-12 16:20:41 -04:00
Joe Grandja
592510c725 Update to @since 7.0
Issue gh-17880
2025-09-12 16:20:41 -04:00
Joe Grandja
e5dc46270a Fix checkstyle
Issue gh-17880
2025-09-12 16:20:39 -04:00
Joe Grandja
6484d1ae25 Update copyright headers to 2004-present
The Spring portfolio is changing to use <inception-year>-present in
the copyright headers to simplify keeping headers up to date. This
commit updates the copyright headers.

The copyright headers were updated using the following find/replace:

Find: (Copyright \d{4})\s*(\-\d{4})? the original author or authors.
Replace: Copyright 2004-present the original author or authors.

Issue gh-17880
2025-09-12 16:20:39 -04:00
Joe Grandja
a620113264 Add test dependencies
Issue gh-17880
2025-09-12 16:20:38 -04:00
Joe Grandja
1ff1d88866 Manual move of spring-projects/spring-authorization-server src/test
Issue gh-17880
2025-09-12 16:20:38 -04:00
Joe Grandja
072f413dd7 Update copyright headers to 2004-present
The Spring portfolio is changing to use <inception-year>-present in
the copyright headers to simplify keeping headers up to date. This
commit updates the copyright headers.

The copyright headers were updated using the following find/replace:

Find: (Copyright \d{4})\s*(\-\d{4})? the original author or authors.
Replace: Copyright 2004-present the original author or authors.

Issue gh-17880
2025-09-12 16:20:37 -04:00
Joe Grandja
327996c964 Add spring-security-oauth2-authorization-server.gradle
Issue gh-17880
2025-09-12 16:20:36 -04:00
Joe Grandja
745e2153ed Manual move of spring-projects/spring-authorization-server src/main
Issue gh-17880
2025-09-12 16:20:36 -04:00
Rob Winch
093e930c32
Merge branch '6.5.x' 2025-09-10 12:00:31 -05:00
Rob Winch
ab634d1099
Merge branch '6.4.x' into 6.5.x 2025-09-10 11:58:55 -05:00
Rob Winch
a79a2b031a
Remove MockWebServer from JwtIssuerAuthenticationManagerResolverTests
This prevents timeouts on GitHub Windows runners due to overtaxed
systems.

Closes gh-17869
2025-09-10 11:56:07 -05:00
Josh Cummings
ed344ece70
Use Fixed Clock
This commit stabilizes time-sensitive tests that
verify the behavior of DPoP iat validation.

Issue gh-14915
2025-09-09 16:22:07 -06:00
Josh Cummings
69ee8d9aec Polish OAuth 2.0 Authentication Builders
Issue gh-17861
2025-09-09 14:59:14 -06:00
Josh Cummings
dd50dc0c40 Remove Generic Typing From Authentication.Builder
It would be better to introduce parameter types for
principal and credentials into Authentication.Builder
at the same time as doing so for Authentication

Issue gh-17861
2025-09-09 14:49:13 -06:00
Josh Cummings
a0fe6a5fee Polish Builders
- Added remaining properties
- Removed apply method since Spring Security isn't using
it right now
- Made builders extensible since the authentications are
extensible

Issue gh-17861
2025-09-09 14:49:13 -06:00
Josh Cummings
a201a2b862 Add Authentication.Builder
This commit adds a new default method to Authentication
for the purposes of creating a Builder based on the current
authentication, allowing other authentications to be
applied to it as a composite.

It also adds Builders for each one of the authentication
result classes.

Issue gh-17861
2025-09-09 14:49:13 -06:00
Josh Cummings
c64b086878
Add SecurityAssertions
This commit introduces a simple, internal test API for
verifying aspects of an Authentication, like its name
and authorities.

Closes gh-17844
2025-09-03 17:53:42 -06:00
Fridolin Jackstadt
910df479be Provider Default Timeouts For JWK Retrieval
Issue gh-14269

Signed-off-by: Fridolin Jackstadt <fridolin.jackstadt@unic.com>
2025-09-02 08:51:10 -06:00
Andrey Litvitski
3278f3a410 Add discoverJwsAlgorithms() in NimbusJwtDecoder
Closes: gh-17785
Signed-off-by: Andrey Litvitski <andrey1010102008@gmail.com>
2025-08-26 17:07:47 -06:00
chanbinme
08fa272749 Remove authoritiesClaimName Field
This commit simplfies the logic in JwtGrantedAuthoritiesConverter
to no longer need the authoritiesClaimName field.

Signed-off-by: chanbinme <gksmfcksqls@gmail.com>
2025-08-13 10:57:15 -06:00
Josh Cummings
eeb383ac46 Fix Checkstyle
Issue gh-17623
2025-08-07 14:32:18 -06:00
Josh Cummings
6d1a886f92 Deprecate SERIAL_VERSION_UID
Closes gh-17623
2025-08-07 11:09:35 -06:00
Rob Winch
f6cb0bd610
Merge Use 2004-present Copyright Header
The original merge into main did not apply the changes. This fixes it.
Closes gh-17635
2025-07-29 10:52:42 -05:00
Rob Winch
2fdca16c1a
Merge branch '6.4.x' into 6.5.x
Closes gh-17634
2025-07-29 09:47:52 -05:00
Rob Winch
392129b616
Use 2004-present Copyright Header
The Spring portfolio is changing to use <inception-year>-present in
the copyright headers to simplify keeping headers up to date. This
commit updates the headers and the checkstyle accordingly.

The commit updated etc/checkstyle/header.txt

It also updated the copyright headers using the following find/replace:

Find: (Copyright \d{4})\s*(\-\d{4})? the original author or authors.
Replace: Copyright 2004-present the original author or authors.

Closes gh-17633
2025-07-29 09:45:23 -05:00
Rob Winch
bf877a9864
Add OAuth2User to OidcUser Conversion Params
Previously the Oidc(Reactive)OAuth2UserService APIs allowed a strategy
for converting to the OidcUser with the OidcUserRequest and OidcUserInfo.
The input should also include the OAuth2User to make
it simple to use the OAuth2User as a part of the conversion.

This commit introduces OidcUserSource as a POJO containing
OidcUserRequest, OidcUserInfo, and OAuth2User.

It then updates the OidcUser conversion strategy in OidcUserService and
OidcReactiveOAuth2UserService to accept OidcUserSource as the source for
the Converter used to create OidUser.

Closes gh-17626
2025-07-25 09:09:24 -05:00
Joe Grandja
b8796d84b7 Fix tests in ClientRegistrationsTests
Issue gh-17542
2025-07-17 09:52:55 -04:00
Josh Cummings
571b6fe4a8
Fix Formatting
Issue gh-16858
2025-07-09 14:05:41 -06:00
Josh Cummings
9dea1c2eb5
Update to Latest HttpRequestValues Contract
Issue gh-16858
2025-07-09 13:47:06 -06:00
Tran Ngoc Nhan
6dc77bd98b Update JwtIssuerAuthenticationManagerResolver constructor javadoc
Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>
2025-07-07 11:37:52 -06:00
Tran Ngoc Nhan
21036c94b4 Remove Nimbus(Reactive)OpaqueTokenIntrospector
Closes gh-17302

Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>
2025-07-03 15:41:57 -06:00
Josh Cummings
919ae1d636
Use PathPatternRequestMatcher in oauth2
Issue gh-16887
2025-07-03 13:37:49 -06:00
Josh Cummings
98686a5139
Standardize Mock Request Paths
Closes gh-17449
2025-07-03 13:37:47 -06:00
Soumik Sarker
06bd81b1da Removed deprecated class BearerTokenAuthenticationFilter
Closes gh-17309

Signed-off-by: Soumik Sarker <ronodhirsoumik@gmail.com>
2025-07-03 12:44:06 -06:00
Soumik Sarker
526f8a6200 Removed deprecated class BearerTokenAuthenticationToken
Issue gh-17309

Signed-off-by: Soumik Sarker <ronodhirsoumik@gmail.com>
2025-07-03 12:44:06 -06:00
Joe Grandja
e869bcdfa3 Remove deprecated implementations of OAuth2AccessTokenResponseClient
Closes gh-16909
2025-07-03 14:23:23 -04:00
Joe Grandja
cfe38957d7 Remove Resource Owner Password Credentials grant
Closes gh-17446
2025-07-03 14:23:23 -04:00
Rob Winch
e37424c637 Fix cycle in DefaultOAuth2AuthorizationRequestResolver
DefaultOAuth2AuthorizationRequestResolver should not depend on
OAuth2AuthorizationRequestRedirectFilter because
OAuth2AuthorizationRequestRedirectFilter already depends on
DefaultOAuth2AuthorizationRequestResolver.

OAuth2AuthorizationRequestRedirectFilter also takes advantage of the
new constructor that defaults the base uri.

Polishes gh-16384
2025-06-27 15:49:28 -05:00
DingHao
7587048f95 Add default authorizationRequestBaseUri to DefaultOAuth2AuthorizationRequestResolver
Closes gh-16383

Signed-off-by: DingHao <dh.hiekn@gmail.com>
2025-06-27 15:49:28 -05:00
Tran Ngoc Nhan
a74ce06dae Remove JwtIssuer(Reactive)AuthenticationManagerResolver deprecations
Signed-off-by: Tran Ngoc Nhan <ngocnhan.tran1996@gmail.com>
2025-06-24 12:33:00 -06:00
Josh Cummings
676b44ebb0 Polish NimbusJwtEncoder Builders
- Simplify withKeyPair methods to match withPublicKey convention
in NimbusJwtDecoder
- Update tests to confirm support of other algorithms
- Update constructor to apply additional JWK properties
to the default header
- Deduce the possibly algorithms for a given key based
on curve and key size
- Remove algorithm method from EC builder since the
algorithm is determined by the Curve of the EC Key

Issue gh-16267

Co-Authored-By: Suraj Bhadrike <surajbh2233@gmail.com>
2025-06-17 16:47:39 -06:00