Class PopulateWebAuthnAuthenticationContext
java.lang.Object
net.shibboleth.shared.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.idp.authn.AbstractAuthenticationAction
net.shibboleth.idp.plugin.authn.webauthn.impl.PopulateWebAuthnAuthenticationContext
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction,Aware,MessageSource,MessageSourceAware,Action
An action to create (or lookup) the
WebAuthnAuthenticationContext and populate
with the username found from the username lookup strategy. The username can be null if
usernameRequiredPredicate is false, otherwise it must be present.- Event:
EventIds.PROCEED_EVENT_ID,EventIds.INVALID_PROFILE_CTX- Postcondition:
- See above.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Consumer<ProfileRequestContext>Consumer to update the context conditionally.private final org.slf4j.LoggerClass logger.private Function<ProfileRequestContext,String> Lookup strategy for the username.private Predicate<ProfileRequestContext>Is the username required?private final Function<ProfileRequestContext,WebAuthnAuthenticationContext> Strategy used to locate or create theWebAuthnAuthenticationContextto populate. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoExecute(ProfileRequestContext profileRequestContext, AuthenticationContext authenticationContext) voidSet a consumer that updates any part of the profile request context.voidSet the username lookup strategy.voidsetUsernameRequired(boolean flag) Set a flag to determine if the username is required or not.voidSet a strategy to determine if the username is required or not.Methods inherited from class net.shibboleth.idp.authn.AbstractAuthenticationAction
doExecute, doPreExecute, doPreExecute, setAuthenticationContextLookupStrategyMethods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getBean, getBean, getMessage, getMessage, getMessage, getParameter, getParameter, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategyMethods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationConditionMethods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, ensureHttpServletRequest, ensureHttpServletResponse, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, isPreExecuteCalled, setHttpServletRequestSupplier, setHttpServletResponseSupplierMethods inherited from class net.shibboleth.shared.component.AbstractInitializableComponent
checkComponentActive, checkSetterPreconditions, destroy, doDestroy, doInitialize, ifDestroyedThrowDestroyedComponentException, ifInitializedThrowUnmodifiabledComponentException, ifNotInitializedThrowUninitializedComponentException, initialize, isDestroyed, isInitializedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.shibboleth.shared.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
webauthnAuthContextCreationStrategy
@Nonnull private final Function<ProfileRequestContext,WebAuthnAuthenticationContext> webauthnAuthContextCreationStrategyStrategy used to locate or create theWebAuthnAuthenticationContextto populate. -
usernameLookupStrategy
Lookup strategy for the username. -
usernameRequiredPredicate
Is the username required? -
contextUpdateConsumer
Consumer to update the context conditionally. For example, to setWebAuthnAuthenticationContext.setSecondFactor(boolean)if we are operating as a second factor.
-
-
Constructor Details
-
PopulateWebAuthnAuthenticationContext
public PopulateWebAuthnAuthenticationContext()Constructor.
-
-
Method Details
-
setContextUpdateConsumer
Set a consumer that updates any part of the profile request context.- Parameters:
consumer- The consumer.
-
setUsernameRequired
public void setUsernameRequired(boolean flag) Set a flag to determine if the username is required or not.- Parameters:
flag- is the username required?
-
setUsernameRequiredPredicate
Set a strategy to determine if the username is required or not.- Parameters:
predicate- the predicate to set.
-
setUsernameLookupStrategy
Set the username lookup strategy.- Parameters:
strategy- lookup strategy
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull AuthenticationContext authenticationContext) - Overrides:
doExecutein classAbstractAuthenticationAction
-