parent
a261c9a047
commit
5fa822d114
|
@ -167,6 +167,7 @@ public final class OAuth2LoginConfigurer<B extends HttpSecurityBuilder<B>> exten
|
||||||
|
|
||||||
public class UserInfoEndpointConfig {
|
public class UserInfoEndpointConfig {
|
||||||
private OAuth2UserService<OAuth2UserRequest, OAuth2User> userService;
|
private OAuth2UserService<OAuth2UserRequest, OAuth2User> userService;
|
||||||
|
private OAuth2UserService<OidcUserRequest, OidcUser> oidcUserService;
|
||||||
private Map<String, Class<? extends OAuth2User>> customUserTypes = new HashMap<>();
|
private Map<String, Class<? extends OAuth2User>> customUserTypes = new HashMap<>();
|
||||||
private GrantedAuthoritiesMapper userAuthoritiesMapper;
|
private GrantedAuthoritiesMapper userAuthoritiesMapper;
|
||||||
|
|
||||||
|
@ -179,6 +180,12 @@ public final class OAuth2LoginConfigurer<B extends HttpSecurityBuilder<B>> exten
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public UserInfoEndpointConfig oidcUserService(OAuth2UserService<OidcUserRequest, OidcUser> oidcUserService) {
|
||||||
|
Assert.notNull(oidcUserService, "oidcUserService cannot be null");
|
||||||
|
this.oidcUserService = oidcUserService;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public UserInfoEndpointConfig customUserType(Class<? extends OAuth2User> customUserType, String clientRegistrationId) {
|
public UserInfoEndpointConfig customUserType(Class<? extends OAuth2User> customUserType, String clientRegistrationId) {
|
||||||
Assert.notNull(customUserType, "customUserType cannot be null");
|
Assert.notNull(customUserType, "customUserType cannot be null");
|
||||||
Assert.hasText(clientRegistrationId, "clientRegistrationId cannot be empty");
|
Assert.hasText(clientRegistrationId, "clientRegistrationId cannot be empty");
|
||||||
|
@ -227,7 +234,6 @@ public final class OAuth2LoginConfigurer<B extends HttpSecurityBuilder<B>> exten
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
OAuth2LoginAuthenticationProvider oauth2LoginAuthenticationProvider =
|
OAuth2LoginAuthenticationProvider oauth2LoginAuthenticationProvider =
|
||||||
new OAuth2LoginAuthenticationProvider(accessTokenResponseClient, oauth2UserService);
|
new OAuth2LoginAuthenticationProvider(accessTokenResponseClient, oauth2UserService);
|
||||||
if (this.userInfoEndpointConfig.userAuthoritiesMapper != null) {
|
if (this.userInfoEndpointConfig.userAuthoritiesMapper != null) {
|
||||||
|
@ -236,8 +242,12 @@ public final class OAuth2LoginConfigurer<B extends HttpSecurityBuilder<B>> exten
|
||||||
}
|
}
|
||||||
http.authenticationProvider(this.postProcess(oauth2LoginAuthenticationProvider));
|
http.authenticationProvider(this.postProcess(oauth2LoginAuthenticationProvider));
|
||||||
|
|
||||||
OAuth2UserService<OidcUserRequest, OidcUser> oidcUserService = new OidcUserService();
|
OAuth2UserService<OidcUserRequest, OidcUser> oidcUserService = this.userInfoEndpointConfig.oidcUserService;
|
||||||
|
if (oidcUserService == null) {
|
||||||
|
oidcUserService = new OidcUserService();
|
||||||
|
}
|
||||||
JwtDecoderRegistry jwtDecoderRegistry = new NimbusJwtDecoderRegistry();
|
JwtDecoderRegistry jwtDecoderRegistry = new NimbusJwtDecoderRegistry();
|
||||||
|
|
||||||
OidcAuthorizationCodeAuthenticationProvider oidcAuthorizationCodeAuthenticationProvider =
|
OidcAuthorizationCodeAuthenticationProvider oidcAuthorizationCodeAuthenticationProvider =
|
||||||
new OidcAuthorizationCodeAuthenticationProvider(
|
new OidcAuthorizationCodeAuthenticationProvider(
|
||||||
accessTokenResponseClient, oidcUserService, jwtDecoderRegistry);
|
accessTokenResponseClient, oidcUserService, jwtDecoderRegistry);
|
||||||
|
|
Loading…
Reference in New Issue