Class CustomOidcIdTokenDecoderFactory
java.lang.Object
com.xebialabs.platform.sso.oidc.authentication.CustomOidcIdTokenDecoderFactory
- All Implemented Interfaces:
org.springframework.security.oauth2.jwt.JwtDecoderFactory<org.springframework.security.oauth2.client.registration.ClientRegistration>
public class CustomOidcIdTokenDecoderFactory
extends Object
implements org.springframework.security.oauth2.jwt.JwtDecoderFactory<org.springframework.security.oauth2.client.registration.ClientRegistration>
This class is replica of
OidcIdTokenDecoderFactory with support
for custom rest operations.
This should be removed once https://github.com/spring-projects/spring-security/issues/8882 is resolved-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.security.oauth2.jwt.JwtDecodercreateDecoder(org.springframework.security.oauth2.client.registration.ClientRegistration clientRegistration) Returns the defaultConverter's used for type conversion of claim values for anOidcIdToken.voidsetClaimTypeConverterFactory(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.core.convert.converter.Converter<Map<String, Object>, Map<String, Object>>> claimTypeConverterFactory) Sets the factory that provides aConverterused for type conversion of claim values for anOidcIdToken.voidsetJwsAlgorithmResolver(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.security.oauth2.jose.jws.JwsAlgorithm> jwsAlgorithmResolver) Sets the resolver that provides the expectedJWS algorithmused for the signature or MAC on theID Token.voidsetJwtValidatorFactory(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.security.oauth2.core.OAuth2TokenValidator<org.springframework.security.oauth2.jwt.Jwt>> jwtValidatorFactory) Sets the factory that provides anOAuth2TokenValidator, which is used by theJwtDecoder.voidsetRestOperations(org.springframework.web.client.RestOperations restOperations) Sets the rest operations used to fetch keys for jwt
-
Constructor Details
-
CustomOidcIdTokenDecoderFactory
public CustomOidcIdTokenDecoderFactory()
-
-
Method Details
-
createDefaultClaimTypeConverters
public static Map<String,org.springframework.core.convert.converter.Converter<Object, createDefaultClaimTypeConverters()?>> Returns the defaultConverter's used for type conversion of claim values for anOidcIdToken.- Returns:
- a
MapofConverter's keyed byclaim name
-
createDecoder
public org.springframework.security.oauth2.jwt.JwtDecoder createDecoder(org.springframework.security.oauth2.client.registration.ClientRegistration clientRegistration) - Specified by:
createDecoderin interfaceorg.springframework.security.oauth2.jwt.JwtDecoderFactory<org.springframework.security.oauth2.client.registration.ClientRegistration>
-
setJwtValidatorFactory
public void setJwtValidatorFactory(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.security.oauth2.core.OAuth2TokenValidator<org.springframework.security.oauth2.jwt.Jwt>> jwtValidatorFactory) Sets the factory that provides anOAuth2TokenValidator, which is used by theJwtDecoder. The default composesJwtTimestampValidatorandOidcIdTokenValidator.- Parameters:
jwtValidatorFactory- the factory that provides anOAuth2TokenValidator
-
setJwsAlgorithmResolver
public void setJwsAlgorithmResolver(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.security.oauth2.jose.jws.JwsAlgorithm> jwsAlgorithmResolver) Sets the resolver that provides the expectedJWS algorithmused for the signature or MAC on theID Token. The default resolves toRS256for allclients.- Parameters:
jwsAlgorithmResolver- the resolver that provides the expectedJWS algorithmfor a specificclient
-
setClaimTypeConverterFactory
public void setClaimTypeConverterFactory(Function<org.springframework.security.oauth2.client.registration.ClientRegistration, org.springframework.core.convert.converter.Converter<Map<String, Object>, Map<String, Object>>> claimTypeConverterFactory) Sets the factory that provides aConverterused for type conversion of claim values for anOidcIdToken. The default isClaimTypeConverterfor allclients.- Parameters:
claimTypeConverterFactory- the factory that provides aConverterused for type conversion of claim values for a specificclient
-
setRestOperations
public void setRestOperations(org.springframework.web.client.RestOperations restOperations) Sets the rest operations used to fetch keys for jwt- Parameters:
restOperations- the rest template
-