mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-06-29 15:22:15 +00:00
Move OAuth2ClientConfigurer.configure to AuthorizationCodeGrantConfigurer
Issue: gh-5654
This commit is contained in:
parent
16fe1c5b52
commit
52622bc6dd
@ -265,6 +265,45 @@ public final class OAuth2ClientConfigurer<B extends HttpSecurityBuilder<B>> exte
|
|||||||
public OAuth2ClientConfigurer<B> and() {
|
public OAuth2ClientConfigurer<B> and() {
|
||||||
return OAuth2ClientConfigurer.this;
|
return OAuth2ClientConfigurer.this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void configure(B builder) {
|
||||||
|
OAuth2AuthorizationRequestRedirectFilter authorizationRequestFilter;
|
||||||
|
|
||||||
|
if (this.authorizationEndpointConfig.authorizationRequestResolver != null) {
|
||||||
|
authorizationRequestFilter = new OAuth2AuthorizationRequestRedirectFilter(
|
||||||
|
this.authorizationEndpointConfig.authorizationRequestResolver);
|
||||||
|
} else {
|
||||||
|
String authorizationRequestBaseUri = this.authorizationEndpointConfig.authorizationRequestBaseUri;
|
||||||
|
if (authorizationRequestBaseUri == null) {
|
||||||
|
authorizationRequestBaseUri = OAuth2AuthorizationRequestRedirectFilter.DEFAULT_AUTHORIZATION_REQUEST_BASE_URI;
|
||||||
|
}
|
||||||
|
authorizationRequestFilter = new OAuth2AuthorizationRequestRedirectFilter(
|
||||||
|
OAuth2ClientConfigurerUtils.getClientRegistrationRepository(builder), authorizationRequestBaseUri);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.authorizationEndpointConfig.authorizationRequestRepository != null) {
|
||||||
|
authorizationRequestFilter.setAuthorizationRequestRepository(
|
||||||
|
this.authorizationEndpointConfig.authorizationRequestRepository);
|
||||||
|
}
|
||||||
|
RequestCache requestCache = builder.getSharedObject(RequestCache.class);
|
||||||
|
if (requestCache != null) {
|
||||||
|
authorizationRequestFilter.setRequestCache(requestCache);
|
||||||
|
}
|
||||||
|
builder.addFilter(postProcess(authorizationRequestFilter));
|
||||||
|
|
||||||
|
AuthenticationManager authenticationManager = builder.getSharedObject(AuthenticationManager.class);
|
||||||
|
|
||||||
|
OAuth2AuthorizationCodeGrantFilter authorizationCodeGrantFilter = new OAuth2AuthorizationCodeGrantFilter(
|
||||||
|
OAuth2ClientConfigurerUtils.getClientRegistrationRepository(builder),
|
||||||
|
OAuth2ClientConfigurerUtils.getAuthorizedClientRepository(builder),
|
||||||
|
authenticationManager);
|
||||||
|
|
||||||
|
if (this.authorizationEndpointConfig.authorizationRequestRepository != null) {
|
||||||
|
authorizationCodeGrantFilter.setAuthorizationRequestRepository(
|
||||||
|
this.authorizationEndpointConfig.authorizationRequestRepository);
|
||||||
|
}
|
||||||
|
builder.addFilter(postProcess(authorizationCodeGrantFilter));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -277,7 +316,7 @@ public final class OAuth2ClientConfigurer<B extends HttpSecurityBuilder<B>> exte
|
|||||||
@Override
|
@Override
|
||||||
public void configure(B builder) throws Exception {
|
public void configure(B builder) throws Exception {
|
||||||
if (this.authorizationCodeGrantConfigurer != null) {
|
if (this.authorizationCodeGrantConfigurer != null) {
|
||||||
this.configure(builder, this.authorizationCodeGrantConfigurer);
|
this.authorizationCodeGrantConfigurer.configure(builder);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -292,43 +331,4 @@ public final class OAuth2ClientConfigurer<B extends HttpSecurityBuilder<B>> exte
|
|||||||
new OAuth2AuthorizationCodeAuthenticationProvider(accessTokenResponseClient);
|
new OAuth2AuthorizationCodeAuthenticationProvider(accessTokenResponseClient);
|
||||||
builder.authenticationProvider(this.postProcess(authorizationCodeAuthenticationProvider));
|
builder.authenticationProvider(this.postProcess(authorizationCodeAuthenticationProvider));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void configure(B builder, AuthorizationCodeGrantConfigurer authorizationCodeGrantConfigurer) throws Exception {
|
|
||||||
OAuth2AuthorizationRequestRedirectFilter authorizationRequestFilter;
|
|
||||||
|
|
||||||
if (authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestResolver != null) {
|
|
||||||
authorizationRequestFilter = new OAuth2AuthorizationRequestRedirectFilter(
|
|
||||||
authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestResolver);
|
|
||||||
} else {
|
|
||||||
String authorizationRequestBaseUri = authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestBaseUri;
|
|
||||||
if (authorizationRequestBaseUri == null) {
|
|
||||||
authorizationRequestBaseUri = OAuth2AuthorizationRequestRedirectFilter.DEFAULT_AUTHORIZATION_REQUEST_BASE_URI;
|
|
||||||
}
|
|
||||||
authorizationRequestFilter = new OAuth2AuthorizationRequestRedirectFilter(
|
|
||||||
OAuth2ClientConfigurerUtils.getClientRegistrationRepository(builder), authorizationRequestBaseUri);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestRepository != null) {
|
|
||||||
authorizationRequestFilter.setAuthorizationRequestRepository(
|
|
||||||
authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestRepository);
|
|
||||||
}
|
|
||||||
RequestCache requestCache = builder.getSharedObject(RequestCache.class);
|
|
||||||
if (requestCache != null) {
|
|
||||||
authorizationRequestFilter.setRequestCache(requestCache);
|
|
||||||
}
|
|
||||||
builder.addFilter(this.postProcess(authorizationRequestFilter));
|
|
||||||
|
|
||||||
AuthenticationManager authenticationManager = builder.getSharedObject(AuthenticationManager.class);
|
|
||||||
|
|
||||||
OAuth2AuthorizationCodeGrantFilter authorizationCodeGrantFilter = new OAuth2AuthorizationCodeGrantFilter(
|
|
||||||
OAuth2ClientConfigurerUtils.getClientRegistrationRepository(builder),
|
|
||||||
OAuth2ClientConfigurerUtils.getAuthorizedClientRepository(builder),
|
|
||||||
authenticationManager);
|
|
||||||
|
|
||||||
if (authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestRepository != null) {
|
|
||||||
authorizationCodeGrantFilter.setAuthorizationRequestRepository(
|
|
||||||
authorizationCodeGrantConfigurer.authorizationEndpointConfig.authorizationRequestRepository);
|
|
||||||
}
|
|
||||||
builder.addFilter(this.postProcess(authorizationCodeGrantFilter));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user