Package net.shibboleth.idp.authn.impl
Class DoLockoutManagerOperation
java.lang.Object
net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
org.opensaml.profile.action.AbstractProfileAction
org.opensaml.profile.action.AbstractConditionalProfileAction
net.shibboleth.idp.profile.AbstractProfileAction
net.shibboleth.idp.authn.impl.DoLockoutManagerOperation
- All Implemented Interfaces:
Component
,DestructableComponent
,InitializableComponent
,ProfileAction
,Aware
,MessageSource
,MessageSourceAware
,Action
Action that implements a JSON REST API for the
AccountLockoutManager
interface.
The API supports GET, POST, and DELETE at the moment, using jsonapi.org conventions.
- GET
- Check for lockout.
- POST
- Increment lockout.
- DELETE
- Clear lockout count.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate String
Account key to operate on.static final String
Flow variable indicating ID of account key.private AccountLockoutManager
AccountLockoutManager
to operate on.private org.slf4j.Logger
Class logger.static final String
Flow variable indicating ID of manager bean to access.private String
Manager ID to operate on.private com.fasterxml.jackson.databind.ObjectMapper
JSON object mapper. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doExecute
(ProfileRequestContext profileRequestContext) protected void
protected boolean
doPreExecute
(ProfileRequestContext profileRequestContext) private AccountLockoutManager
getLockoutManager
(RequestContext requestContext) Helper method to get the manager bean to operate on.private void
Output an error object.void
setObjectMapper
(com.fasterxml.jackson.databind.ObjectMapper mapper) Set the JSONObjectMapper
to use for serialization.Methods inherited from class net.shibboleth.idp.profile.AbstractProfileAction
doExecute, execute, getBean, getBean, getMessage, getMessage, getMessage, getParameter, getParameter, getProfileContextLookupStrategy, getRequestContext, getResult, setMessageSource, setProfileContextLookupStrategy
Methods inherited from class org.opensaml.profile.action.AbstractConditionalProfileAction
getActivationCondition, setActivationCondition
Methods inherited from class org.opensaml.profile.action.AbstractProfileAction
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletRequestSupplier, getHttpServletResponse, getHttpServletResponseSupplier, getLogPrefix, setHttpServletRequest, setHttpServletRequestSupplier, setHttpServletResponse, setHttpServletResponseSupplier
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, initialize, isDestroyed, isInitialized
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
Field Details
-
MANAGER_ID
Flow variable indicating ID of manager bean to access.- See Also:
-
KEY
Flow variable indicating ID of account key.- See Also:
-
log
@Nonnull private org.slf4j.Logger logClass logger. -
objectMapper
JSON object mapper. -
managerId
Manager ID to operate on. -
key
Account key to operate on. -
lockoutManager
AccountLockoutManager
to operate on.
-
-
Constructor Details
-
DoLockoutManagerOperation
public DoLockoutManagerOperation()
-
-
Method Details
-
setObjectMapper
public void setObjectMapper(@Nonnull com.fasterxml.jackson.databind.ObjectMapper mapper) Set the JSONObjectMapper
to use for serialization.- Parameters:
mapper
- object mapper
-
doInitialize
- Overrides:
doInitialize
in classAbstractInitializableComponent
- Throws:
ComponentInitializationException
-
doPreExecute
- Overrides:
doPreExecute
in classAbstractConditionalProfileAction
-
doExecute
- Overrides:
doExecute
in classAbstractProfileAction
-
getLockoutManager
Helper method to get the manager bean to operate on.- Parameters:
requestContext
- current SWF request context- Returns:
- lockout manager or null
-
sendError
private void sendError(int status, @Nonnull @NotEmpty String title, @Nonnull @NotEmpty String detail) throws IOException Output an error object.- Parameters:
status
- HTTP statustitle
- fixed error descriptiondetail
- human-readable error description- Throws:
IOException
- if unable to output the error
-