Class JwtAuthenticator
java.lang.Object
org.pac4j.core.util.InitializableObject
org.pac4j.core.profile.definition.ProfileDefinitionAware
org.pac4j.jwt.credentials.authenticator.JwtAuthenticator
- All Implemented Interfaces:
org.pac4j.core.credentials.authenticator.Authenticator
public class JwtAuthenticator
extends org.pac4j.core.profile.definition.ProfileDefinitionAware
implements org.pac4j.core.credentials.authenticator.Authenticator
Authenticator for JWT. It creates the user profile and stores it in the credentials
for the
AuthenticatorProfileCreator
.- Since:
- 1.8.0
- Author:
- Jerome Leleu
-
Field Summary
FieldsFields inherited from interface org.pac4j.core.credentials.authenticator.Authenticator
ALWAYS_VALIDATE, NEVER_VALIDATE
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor for JwtAuthenticator.JwtAuthenticator
(List<SignatureConfiguration> signatureConfigurations) Constructor for JwtAuthenticator.JwtAuthenticator
(List<SignatureConfiguration> signatureConfigurations, List<EncryptionConfiguration> encryptionConfigurations) Constructor for JwtAuthenticator.JwtAuthenticator
(SignatureConfiguration signatureConfiguration) Constructor for JwtAuthenticator.JwtAuthenticator
(SignatureConfiguration signatureConfiguration, EncryptionConfiguration encryptionConfiguration) Constructor for JwtAuthenticator. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addEncryptionConfiguration
(EncryptionConfiguration encryptionConfiguration) addEncryptionConfiguration.void
addSignatureConfiguration
(SignatureConfiguration signatureConfiguration) addSignatureConfiguration.protected void
createJwtProfile
(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.TokenCredentials credentials, com.nimbusds.jwt.JWT jwt) createJwtProfile.Getter for the fieldexpirationTime
.protected void
internalInit
(boolean forceReinit) void
setEncryptionConfiguration
(EncryptionConfiguration encryptionConfiguration) setEncryptionConfiguration.void
setEncryptionConfigurations
(List<EncryptionConfiguration> encryptionConfigurations) Setter for the fieldencryptionConfigurations
.void
setExpirationTime
(Date expirationTime) Setter for the fieldexpirationTime
.void
setSignatureConfiguration
(SignatureConfiguration signatureConfiguration) setSignatureConfiguration.void
setSignatureConfigurations
(List<SignatureConfiguration> signatureConfigurations) Setter for the fieldsignatureConfigurations
.Optional
<org.pac4j.core.credentials.Credentials> validate
(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.Credentials cred) org.pac4j.core.profile.UserProfile
validateToken
(String token) Validates the token and returns the corresponding user profile.validateTokenAndGetClaims
(String token) Validates the token and returns the corresponding user profile.Methods inherited from class org.pac4j.core.profile.definition.ProfileDefinitionAware
getProfileDefinition, setProfileDefinition, setProfileDefinitionIfUndefined
Methods inherited from class org.pac4j.core.util.InitializableObject
afterInternalInit, beforeInternalInit, getInitialized, getLastAttempt, getMaxAttempts, getMinTimeIntervalBetweenAttemptsInMilliseconds, getNbAttempts, init, init, isInitialized, reinit, setMaxAttempts, setMinTimeIntervalBetweenAttemptsInMilliseconds, shouldInitialize, toString
-
Field Details
-
logger
protected final org.slf4j.Logger logger
-
-
Constructor Details
-
JwtAuthenticator
public JwtAuthenticator()Constructor for JwtAuthenticator.
-
JwtAuthenticator
Constructor for JwtAuthenticator.
- Parameters:
signatureConfigurations
- aList
object
-
JwtAuthenticator
public JwtAuthenticator(List<SignatureConfiguration> signatureConfigurations, List<EncryptionConfiguration> encryptionConfigurations) Constructor for JwtAuthenticator.
-
JwtAuthenticator
Constructor for JwtAuthenticator.
- Parameters:
signatureConfiguration
- aSignatureConfiguration
object
-
JwtAuthenticator
public JwtAuthenticator(SignatureConfiguration signatureConfiguration, EncryptionConfiguration encryptionConfiguration) Constructor for JwtAuthenticator.
- Parameters:
signatureConfiguration
- aSignatureConfiguration
objectencryptionConfiguration
- aEncryptionConfiguration
object
-
-
Method Details
-
internalInit
protected void internalInit(boolean forceReinit) - Specified by:
internalInit
in classorg.pac4j.core.util.InitializableObject
-
validateTokenAndGetClaims
Validates the token and returns the corresponding user profile.- Parameters:
token
- the JWT- Returns:
- the corresponding user profile
-
validateToken
Validates the token and returns the corresponding user profile.- Parameters:
token
- the JWT- Returns:
- the corresponding user profile
-
validate
public Optional<org.pac4j.core.credentials.Credentials> validate(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.Credentials cred) - Specified by:
validate
in interfaceorg.pac4j.core.credentials.authenticator.Authenticator
-
createJwtProfile
protected void createJwtProfile(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.TokenCredentials credentials, com.nimbusds.jwt.JWT jwt) throws ParseException createJwtProfile.
- Parameters:
ctx
- aCallContext
objectcredentials
- aTokenCredentials
objectjwt
- aJWT
object- Throws:
ParseException
- if any.
-
setSignatureConfiguration
setSignatureConfiguration.
- Parameters:
signatureConfiguration
- aSignatureConfiguration
object
-
addSignatureConfiguration
addSignatureConfiguration.
- Parameters:
signatureConfiguration
- aSignatureConfiguration
object
-
setSignatureConfigurations
Setter for the field
signatureConfigurations
.- Parameters:
signatureConfigurations
- aList
object
-
setEncryptionConfiguration
setEncryptionConfiguration.
- Parameters:
encryptionConfiguration
- aEncryptionConfiguration
object
-
addEncryptionConfiguration
addEncryptionConfiguration.
- Parameters:
encryptionConfiguration
- aEncryptionConfiguration
object
-
setEncryptionConfigurations
Setter for the field
encryptionConfigurations
.- Parameters:
encryptionConfigurations
- aList
object
-
setExpirationTime
Setter for the field
expirationTime
.- Parameters:
expirationTime
- aDate
object
-
getExpirationTime
Getter for the field
expirationTime
.- Returns:
- a
Date
object
-