Package org.ldaptive.auth.ext
Class ActiveDirectoryAuthenticationResponseHandler
- java.lang.Object
-
- org.ldaptive.AbstractFreezable
-
- org.ldaptive.auth.ext.ActiveDirectoryAuthenticationResponseHandler
-
- All Implemented Interfaces:
AuthenticationResponseHandler
,Freezable
public class ActiveDirectoryAuthenticationResponseHandler extends AbstractFreezable implements AuthenticationResponseHandler
Attempts to parse the authentication response message and set the account state using data associated with active directory. If this handler is assigned aexpirationPeriod
, then theAuthenticator
should be configured to return the 'pwdLastSet' attribute, so it can be consumed by this handler. This will cause the handler to emit a warning for the pwdLastSet value plus the expiration amount. The scope of that warning can be further narrowed by providing awarningPeriod
. By default, if the msDS-UserPasswordExpiryTimeComputed attribute is found, expirationPeriod is ignored.
-
-
Field Summary
Fields Modifier and Type Field Description static String[]
ATTRIBUTES
Attributes needed to enforce password policy.private Period
expirationPeriod
Amount of time since a password was set until it will expire.private Logger
logger
Logger for this class.private Period
warningPeriod
Amount of time before expiration to produce a warning.
-
Constructor Summary
Constructors Constructor Description ActiveDirectoryAuthenticationResponseHandler()
Default constructor.ActiveDirectoryAuthenticationResponseHandler(Period warning)
Creates a new active directory authentication response handler.ActiveDirectoryAuthenticationResponseHandler(Period expiration, Period warning)
Creates a new active directory authentication response handler.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Period
getExpirationPeriod()
Returns the amount of time since a password was set until it will expire.Period
getWarningPeriod()
Returns the amount of time before expiration to produce a warning.void
handle(AuthenticationResponse response)
Handle the response from an ldap authentication.void
setExpirationPeriod(Period period)
Sets amount of time since a password was set until it will expire.void
setWarningPeriod(Period period)
Sets the amount of time before expiration to produce a warning.String
toString()
-
Methods inherited from class org.ldaptive.AbstractFreezable
assertMutable, freeze, freeze, freeze, isFrozen
-
-
-
-
Field Detail
-
ATTRIBUTES
public static final String[] ATTRIBUTES
Attributes needed to enforce password policy.
-
logger
private final Logger logger
Logger for this class.
-
expirationPeriod
private Period expirationPeriod
Amount of time since a password was set until it will expire. Used if msDS-UserPasswordExpiryTimeComputed cannot be read.
-
warningPeriod
private Period warningPeriod
Amount of time before expiration to produce a warning.
-
-
Constructor Detail
-
ActiveDirectoryAuthenticationResponseHandler
public ActiveDirectoryAuthenticationResponseHandler()
Default constructor.
-
ActiveDirectoryAuthenticationResponseHandler
public ActiveDirectoryAuthenticationResponseHandler(Period warning)
Creates a new active directory authentication response handler.- Parameters:
warning
- length of time before expiration that should produce a warning
-
ActiveDirectoryAuthenticationResponseHandler
public ActiveDirectoryAuthenticationResponseHandler(Period expiration, Period warning)
Creates a new active directory authentication response handler.- Parameters:
expiration
- length of time that a password is validwarning
- length of time before expiration that should produce a warning
-
-
Method Detail
-
handle
public void handle(AuthenticationResponse response)
Description copied from interface:AuthenticationResponseHandler
Handle the response from an ldap authentication.- Specified by:
handle
in interfaceAuthenticationResponseHandler
- Parameters:
response
- produced from an authentication
-
getExpirationPeriod
public Period getExpirationPeriod()
Returns the amount of time since a password was set until it will expire.- Returns:
- expiration period
-
setExpirationPeriod
public void setExpirationPeriod(Period period)
Sets amount of time since a password was set until it will expire.- Parameters:
period
- expiration period
-
getWarningPeriod
public Period getWarningPeriod()
Returns the amount of time before expiration to produce a warning.- Returns:
- warning period
-
setWarningPeriod
public void setWarningPeriod(Period period)
Sets the amount of time before expiration to produce a warning.- Parameters:
period
- warning period
-
-