Class AbstractJWTClientValidator
java.lang.Object
org.keycloak.authentication.authenticators.client.AbstractBaseJWTValidator
org.keycloak.authentication.authenticators.client.AbstractJWTClientValidator
- Direct Known Subclasses:
FederatedJWTClientValidator,JWTClientValidator
Common validation for JWT client authentication with private_key_jwt or with client_secret
- Author:
- Marek Posolda
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Stringprotected final org.keycloak.authentication.ClientAuthenticationFlowContextprotected Stringprotected final org.keycloak.models.RealmModelprotected final AbstractJWTClientValidator.SignatureValidatorFields inherited from class org.keycloak.authentication.authenticators.client.AbstractBaseJWTValidator
clientAssertionState, currentTime, session -
Constructor Summary
ConstructorsConstructorDescriptionAbstractJWTClientValidator(org.keycloak.authentication.ClientAuthenticationFlowContext context, AbstractJWTClientValidator.SignatureValidator signatureValidator, String clientAuthenticatorProviderId) -
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleanbooleanprotected booleanfailure(org.keycloak.authentication.AuthenticationFlowError error) protected booleanfailure(org.keycloak.authentication.AuthenticationFlowError error, jakarta.ws.rs.core.Response response) protected voidfailureCallback(String errorDescription) protected abstract intorg.keycloak.models.ClientModelorg.keycloak.authentication.ClientAuthenticationFlowContextprotected abstract Stringprotected abstract Stringprotected abstract intprotected abstract booleanprotected abstract booleanbooleanvalidate()protected booleanprotected booleanprotected booleanMethods inherited from class org.keycloak.authentication.authenticators.client.AbstractBaseJWTValidator
getClientAssertion, getJtiCacheKeyPrefix, getJws, getState, isSymmetricAlgorithmAllowed, validateSignatureAlgorithm, validateTokenActive, validateTokenAudience, validateTokenReuse
-
Field Details
-
context
protected final org.keycloak.authentication.ClientAuthenticationFlowContext context -
realm
protected final org.keycloak.models.RealmModel realm -
signatureValidator
-
clientAuthenticatorProviderId
-
expectedClientAssertionType
-
-
Constructor Details
-
AbstractJWTClientValidator
public AbstractJWTClientValidator(org.keycloak.authentication.ClientAuthenticationFlowContext context, AbstractJWTClientValidator.SignatureValidator signatureValidator, String clientAuthenticatorProviderId) throws Exception - Throws:
Exception
-
-
Method Details
-
getContext
public org.keycloak.authentication.ClientAuthenticationFlowContext getContext() -
getClient
public org.keycloak.models.ClientModel getClient() -
validate
public boolean validate() -
validateClientAssertionParameters
protected boolean validateClientAssertionParameters() -
validateClient
protected boolean validateClient() -
validateSignature
protected boolean validateSignature() -
failure
-
failure
-
failure
-
failure
protected boolean failure(org.keycloak.authentication.AuthenticationFlowError error) -
failure
protected boolean failure(org.keycloak.authentication.AuthenticationFlowError error, jakarta.ws.rs.core.Response response) -
failureCallback
- Specified by:
failureCallbackin classAbstractBaseJWTValidator
-
getExpectedTokenIssuer
-
getExpectedAudiences
-
isMultipleAudienceAllowed
protected abstract boolean isMultipleAudienceAllowed() -
getAllowedClockSkew
protected abstract int getAllowedClockSkew() -
getMaximumExpirationTime
protected abstract int getMaximumExpirationTime() -
isReusePermitted
protected abstract boolean isReusePermitted() -
getExpectedSignatureAlgorithm
-