mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-05-31 09:12:14 +00:00
Polish gh-8669
This commit is contained in:
parent
48aa5cceda
commit
7cc6509200
@ -25,11 +25,11 @@ import org.springframework.beans.factory.xml.ParserContext;
|
||||
import org.springframework.security.oauth2.client.authentication.OAuth2AuthorizationCodeAuthenticationProvider;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2AuthorizationCodeGrantFilter;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2AuthorizedClientRepository;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.util.xml.DomUtils;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.createAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.createDefaultAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.getAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.getAuthorizedClientService;
|
||||
@ -64,12 +64,9 @@ final class OAuth2ClientBeanDefinitionParser implements BeanDefinitionParser {
|
||||
BeanMetadataElement authorizedClientRepository = getAuthorizedClientRepository(element);
|
||||
if (authorizedClientRepository == null) {
|
||||
BeanMetadataElement authorizedClientService = getAuthorizedClientService(element);
|
||||
if (authorizedClientService == null) {
|
||||
this.defaultAuthorizedClientRepository = createDefaultAuthorizedClientRepository(clientRegistrationRepository);
|
||||
authorizedClientRepository = this.defaultAuthorizedClientRepository;
|
||||
} else {
|
||||
authorizedClientRepository = createAuthorizedClientRepository(authorizedClientService);
|
||||
}
|
||||
this.defaultAuthorizedClientRepository = createDefaultAuthorizedClientRepository(
|
||||
clientRegistrationRepository, authorizedClientService);
|
||||
authorizedClientRepository = new RuntimeBeanReference(OAuth2AuthorizedClientRepository.class);
|
||||
}
|
||||
BeanMetadataElement authorizationRequestRepository = getAuthorizationRequestRepository(
|
||||
authorizationCodeGrantElt);
|
||||
|
@ -59,18 +59,14 @@ final class OAuth2ClientBeanDefinitionParserUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
static BeanMetadataElement createAuthorizedClientRepository(BeanMetadataElement authorizedClientService) {
|
||||
return BeanDefinitionBuilder.rootBeanDefinition(
|
||||
"org.springframework.security.oauth2.client.web.AuthenticatedPrincipalOAuth2AuthorizedClientRepository")
|
||||
.addConstructorArgValue(authorizedClientService)
|
||||
.getBeanDefinition();
|
||||
}
|
||||
|
||||
static BeanDefinition createDefaultAuthorizedClientRepository(BeanMetadataElement clientRegistrationRepository) {
|
||||
BeanDefinition authorizedClientService = BeanDefinitionBuilder.rootBeanDefinition(
|
||||
"org.springframework.security.oauth2.client.InMemoryOAuth2AuthorizedClientService")
|
||||
.addConstructorArgValue(clientRegistrationRepository)
|
||||
.getBeanDefinition();
|
||||
static BeanDefinition createDefaultAuthorizedClientRepository(
|
||||
BeanMetadataElement clientRegistrationRepository, BeanMetadataElement authorizedClientService) {
|
||||
if (authorizedClientService == null) {
|
||||
authorizedClientService = BeanDefinitionBuilder.rootBeanDefinition(
|
||||
"org.springframework.security.oauth2.client.InMemoryOAuth2AuthorizedClientService")
|
||||
.addConstructorArgValue(clientRegistrationRepository)
|
||||
.getBeanDefinition();
|
||||
}
|
||||
return BeanDefinitionBuilder.rootBeanDefinition(
|
||||
"org.springframework.security.oauth2.client.web.AuthenticatedPrincipalOAuth2AuthorizedClientRepository")
|
||||
.addConstructorArgValue(authorizedClientService)
|
||||
|
@ -37,6 +37,7 @@ import org.springframework.security.oauth2.client.authentication.OAuth2LoginAuth
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistration;
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2AuthorizedClientRepository;
|
||||
import org.springframework.security.oauth2.client.web.OAuth2LoginAuthenticationFilter;
|
||||
import org.springframework.security.oauth2.core.OAuth2AuthenticationException;
|
||||
import org.springframework.security.oauth2.core.OAuth2Error;
|
||||
@ -66,7 +67,6 @@ import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.createAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.createDefaultAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.getAuthorizedClientRepository;
|
||||
import static org.springframework.security.config.http.OAuth2ClientBeanDefinitionParserUtils.getAuthorizedClientService;
|
||||
@ -136,12 +136,9 @@ final class OAuth2LoginBeanDefinitionParser implements BeanDefinitionParser {
|
||||
BeanMetadataElement authorizedClientRepository = getAuthorizedClientRepository(element);
|
||||
if (authorizedClientRepository == null) {
|
||||
BeanMetadataElement authorizedClientService = getAuthorizedClientService(element);
|
||||
if (authorizedClientService == null) {
|
||||
this.defaultAuthorizedClientRepository = createDefaultAuthorizedClientRepository(clientRegistrationRepository);
|
||||
authorizedClientRepository = this.defaultAuthorizedClientRepository;
|
||||
} else {
|
||||
authorizedClientRepository = createAuthorizedClientRepository(authorizedClientService);
|
||||
}
|
||||
this.defaultAuthorizedClientRepository = createDefaultAuthorizedClientRepository(
|
||||
clientRegistrationRepository, authorizedClientService);
|
||||
authorizedClientRepository = new RuntimeBeanReference(OAuth2AuthorizedClientRepository.class);
|
||||
}
|
||||
BeanMetadataElement accessTokenResponseClient = getAccessTokenResponseClient(element);
|
||||
BeanMetadataElement oauth2UserService = getOAuth2UserService(element);
|
||||
|
Loading…
x
Reference in New Issue
Block a user