@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class PasswordPolicyStateJSON extends java.lang.Object implements java.io.Serializable
ds-pwp-state-json
virtual attribute, which holds information about a
user's password policy state.
NOTE: This class, and other classes within the
com.unboundid.ldap.sdk.unboundidds
package structure, are only
supported for use against Ping Identity, UnboundID, and
Nokia/Alcatel-Lucent 8661 server products. These classes provide support
for proprietary functionality or for external specifications that are not
considered stable or mature enough to be guaranteed to work in an
interoperable way with other types of LDAP servers.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
PASSWORD_POLICY_STATE_JSON_ATTRIBUTE
The name of the operational attribute that holds a JSON representation of a
user's password policy state.
|
Constructor and Description |
---|
PasswordPolicyStateJSON(JSONObject passwordPolicyStateObject)
Creates a new instance of this object from the provided JSON object.
|
Modifier and Type | Method and Description |
---|---|
static PasswordPolicyStateJSON |
get(Entry userEntry)
Attempts to retrieve and decode the password policy state information from
the provided user entry.
|
static PasswordPolicyStateJSON |
get(LDAPInterface connection,
java.lang.String userDN)
Attempts to retrieve and decode the password policy state information for
the specified user.
|
java.util.Date |
getAccountActivationTime()
Retrieves the time that the user's account became (or will become) active.
|
java.util.Date |
getAccountExpirationTime()
Retrieves the time that the user's account will (or did) expire.
|
java.lang.Boolean |
getAccountIsDisabled()
Retrieves the value of a flag that indicates whether the user's account has
been administratively disabled.
|
java.lang.Boolean |
getAccountIsExpired()
Retrieves the value of a flag that indicates whether the user's account is
expired.
|
java.lang.Boolean |
getAccountIsFailureLocked()
Retrieves the value of a flag that indicates whether the user account is
currently locked as a result of too many failed authentication attempts.
|
java.lang.Boolean |
getAccountIsIdleLocked()
Retrieves the value of a flag that indicates whether the user's account is
currently locked because it has been too long since they last authenticated
to the server.
|
java.lang.Boolean |
getAccountIsNotYetActive()
Retrieves the value of a flag that indicates whether the user's account is
not yet active because it has an activation time that is in the future.
|
java.lang.Boolean |
getAccountIsResetLocked()
Retrieves the value of a flag that indicates whether the user's account is
locked because they failed to choose a new password in a timely manner
after an administrative reset.
|
java.lang.Boolean |
getAccountIsUsable()
Retrieves the value of a flag that indicates whether the user's account is
in a state that the server considers usable.
|
java.lang.Boolean |
getAccountIsValidationLocked()
Retrieves the value of a flag that indicates whether the user account is
currently locked because it contains a password that does not satisfy all
of the configured password validators.
|
java.util.List<PasswordPolicyStateAccountUsabilityError> |
getAccountUsabilityErrors()
Retrieves a list of information about any error conditions that may
affect usability of the user's account.
|
java.util.List<PasswordPolicyStateAccountUsabilityNotice> |
getAccountUsabilityNotices()
Retrieves a list of information about any notices related to the usability
of the user's account.
|
java.util.List<PasswordPolicyStateAccountUsabilityWarning> |
getAccountUsabilityWarnings()
Retrieves a list of information about any warning conditions that may soon
affect usability of the user's account.
|
java.util.List<PasswordQualityRequirement> |
getAddPasswordQualityRequirements()
Retrieves the list of quality requirements that must be satisfied for
passwords included in new entries that are added using the same password
policy as the associated entry.
|
java.util.List<PasswordQualityRequirement> |
getAdministrativeResetPasswordQualityRequirements()
Retrieves the list of quality requirements that must be satisfied when an
administrator attempts to change the user's password.
|
java.util.List<java.util.Date> |
getAuthenticationFailureTimes()
Retrieves a list of the outstanding authentication failure times for the
user account.
|
java.util.List<java.lang.String> |
getAvailableOTPDeliveryMechanisms()
Retrieves a list of the names of the OTP delivery mechanisms that the user
can use to receive one-time passwords, password reset tokens, and
single-use tokens.
|
java.util.List<java.lang.String> |
getAvailableSASLMechanisms()
Retrieves a list of the names of the SASL mechanisms that the user can use
to authenticate.
|
java.util.List<PasswordQualityRequirement> |
getBindPasswordQualityRequirements()
Retrieves the list of quality requirements that must be satisfied when the
associated user authenticates in a manner that makes the clear-text
password available to the server.
|
java.lang.String |
getBindPasswordValidationFailureAction()
Retrieves the name of the action that the server should take if the
password provided during a bind operation fails to satisfy one or more
password validators.
|
java.lang.Integer |
getCurrentAuthenticationFailureCount()
Retrieves the current number of failed authentication attempts for the
user account.
|
java.lang.Integer |
getCurrentPasswordHistoryCount()
Retrieves the number of passwords currently held in the user's password
history.
|
java.lang.Boolean |
getExpirePasswordsWithoutWarning()
Retrieves the value of a flag that indicates whether the server will allow
a user's password to expire even if they have not yet received any warnings
about an upcoming expiration.
|
java.lang.Integer |
getFailureLockoutCount()
Retrieves the number of consecutive failed authentication attempts that are
required to lock the user's account.
|
java.lang.Integer |
getFailureLockoutDurationSeconds()
Retrieves the length of time in seconds that a user's account will be
locked after too many failed authentication attempts.
|
java.util.Date |
getFailureLockoutExpirationTime()
Retrieves the time that the user's failure-locked account will be
automatically unlocked.
|
java.util.Date |
getFailureLockoutTime()
Retrieves the time that the user's account was locked as a result of too
many failed authentication attempts.
|
java.lang.Boolean |
getForceChangeOnAdd()
Retrieves the value of a flag that indicates whether the password policy
that governs the user is configured to require users to choose a new
password the first time they authenticate after their account is created.
|
java.lang.Boolean |
getForceChangeOnReset()
Retrieves the value of a flag that indicates whether the password policy
that governs the user is configured to require users to choose a new
password the first time they authenticate after their password has been
reset by an administrator.
|
java.util.List<java.util.Date> |
getGraceLoginUseTimes()
Retrieves a list of the times that the user has used a grace login to
authenticate.
|
java.lang.Boolean |
getHasRegisteredYubiKeyOTPDevice()
Retrieves the value of a flag that indicates whether the user account has
at least one registered YubiKey OTP device that can be used to authenticate
via the UNBOUNDID-YUBIKEY-OTP SASL mechanism.
|
java.lang.Boolean |
getHasRetiredPassword()
Retrieves the value of a flag that indicates whether the user account has a
retired former password that may still be used to authenticate.
|
java.lang.Boolean |
getHasStaticPassword()
Retrieves the value of a flag that indicates whether the user's account
contains at least one static password.
|
java.lang.Boolean |
getHasTOTPSharedSecret()
Retrieves the value of a flag that indicates whether the user account has
at least one TOTP shared secret that can be used to authenticate with
time-based one-time passwords via the UNBOUNDID-TOTP SASL mechanism.
|
java.lang.Integer |
getIdleLockoutIntervalSeconds()
Retrieves the maximum length of time in seconds that can elapse between
successful authentications before the user's account is locked.
|
java.util.Date |
getIdleLockoutTime()
Retrieves the time that the user's account will be (or was) locked for
allowing too much time to elapse between successful authentications.
|
java.lang.Boolean |
getIsWithinMinimumPasswordAge()
Indicates whether the user is currently prohibited from changing their
password because not enough time has elapsed since they last changed their
password.
|
java.util.Date |
getLastBindPasswordValidationTime()
Retrieves the time that the server last invoked password validators during
a bind operation for the user.
|
java.lang.String |
getLastLoginIPAddress()
Retrieves the IP address of the client from which the user last
successfully authenticated.
|
java.util.Date |
getLastLoginTime()
Retrieves the time that the user last successfully authenticated to the
server.
|
java.lang.Integer |
getMaximumGraceLoginCount()
Retrieves the maximum number of grace login attempts that the user will
have to allow them to change an expired password.
|
java.lang.Integer |
getMaximumPasswordAgeSeconds()
Retrieves the maximum length of time in seconds after a password change
that the user is allowed to keep using that password.
|
java.lang.Integer |
getMaximumPasswordHistoryCount()
Retrieves the maximum number of passwords that the server will maintain in
the user's password history.
|
java.lang.Integer |
getMaximumPasswordHistoryDurationSeconds()
Retrieves the maximum length of time in seconds that the server will
maintain passwords in the user's password history.
|
java.lang.Integer |
getMaximumPasswordResetAgeSeconds()
Retrieves the maximum length of time in seconds that a user has to change
their password after an administrative reset before their account will be
locked.
|
java.lang.Integer |
getMaximumRecentLoginHistoryFailedAuthenticationCount()
Retrieves the maximum number of recent failed login attempts the server
should maintain for a user.
|
java.lang.Integer |
getMaximumRecentLoginHistoryFailedAuthenticationDurationSeconds()
Retrieves the maximum age in seconds of recent failed login attempts
the server should maintain for a user.
|
java.lang.Integer |
getMaximumRecentLoginHistorySuccessfulAuthenticationCount()
Retrieves the maximum number of recent successful login attempts the server
should maintain for a user.
|
java.lang.Integer |
getMaximumRecentLoginHistorySuccessfulAuthenticationDurationSeconds()
Retrieves the maximum age in seconds of recent successful login attempts
the server should maintain for a user.
|
java.lang.Integer |
getMinimumBindPasswordValidationFrequencySeconds()
Retrieves the minimum length of time in seconds that should pass between
invocations of password validators during a bind operation for the user.
|
java.util.Date |
getMinimumPasswordAgeExpirationTime()
Retrieves the earliest time that the user will be permitted to change their
password as a result of the minimum password age.
|
java.lang.Integer |
getMinimumPasswordAgeSeconds()
Retrieves the minimum length of time in seconds that must elapse after a
user changes their password before they will be permitted to change it
again.
|
java.lang.Boolean |
getMustChangePassword()
Retrieves the value of a flag that indicates whether the user must change
their password before they will be allowed to perform any other operations
in the server.
|
java.util.Map<java.lang.String,java.util.List<java.lang.String>> |
getNonCurrentPasswordStorageSchemeSettingsExplanations()
Retrieves a map with information about the reasons that a password may not
be encoded with the current settings for the associated password storage
scheme.
|
java.util.Date |
getPasswordChangedTime()
Retrieves the time that the user's password was last changed.
|
java.util.Date |
getPasswordExpirationTime()
Retrieves the time that the user's password will (or did) expire.
|
java.lang.Integer |
getPasswordExpirationWarningIntervalSeconds()
Retrieves the length of time in seconds before an upcoming password
expiration that the user will be eligible to start receving warnings about
that expiration.
|
java.lang.Boolean |
getPasswordExpirationWarningIssued()
Retrieves the value of a flag that indicates whether the user has
received at least one warning about an upcoming password expiration.
|
java.util.Date |
getPasswordExpirationWarningTime()
Retrieves the time that the user will be eligible to receive (or the time
that the user first received) a warning about an upcoming password
expiration.
|
java.lang.Boolean |
getPasswordIsExpired()
Retrieves the value of a flag that indicates whether the user's password is
expired.
|
java.lang.String |
getPasswordPolicyDN()
Retrieves the DN of the entry that defines the password policy that governs
the associated user.
|
JSONObject |
getPasswordPolicyStateJSONObject()
Retrieves the JSON object that contains the encoded password policy state
information.
|
RecentLoginHistory |
getRecentLoginHistory()
Retrieves the recent login history for the user.
|
java.lang.Integer |
getRemainingAuthenticationFailureCount()
Retrieves the remaining number of failed authentication attempts required
to lock the user account.
|
java.lang.Integer |
getRemainingGraceLoginCount()
Retrieves the remaining number of grace logins for the user.
|
java.lang.Boolean |
getRequireSecureAuthentication()
Retrieves the value of a flag that indicates whether the user will be
required to authenticate in a secure manner that does not reveal their
credentials to an observer.
|
java.lang.Boolean |
getRequireSecurePasswordChanges()
Retrieves the value of a flag that indicates whether the user will be
required to change their password in a secure manner that does not reveal
their credentials to an observer.
|
java.util.Date |
getResetLockoutTime()
Retrieves the time that the user's account will be (or was) locked after
failing to choose a new password in a timely manner after an administrative
reset.
|
java.util.Date |
getRetiredPasswordExpirationTime()
Retrieves the time that the user's retired password will expire and can no
longer be used to authenticate.
|
java.lang.Integer |
getSecondsRemainingInFailureLockout()
Retrieves the length of time in seconds remaining until the user's
failure-locked account will be automatically unlocked.
|
java.lang.Integer |
getSecondsRemainingInMinimumPasswordAge()
Retrieves the length of time in seconds remaining until the user will be
permitted to change their password as a result of the minimum password age.
|
java.lang.Integer |
getSecondsSinceAccountActivation()
Retrieves the length of time in seconds since the user's account became
active.
|
java.lang.Integer |
getSecondsSinceAccountExpiration()
Retrieves the length of time in seconds since the user's account expired.
|
java.lang.Integer |
getSecondsSinceIdleLockout()
Retrieves the length of time in seconds since the user's account was
locked for allowing too much time to elapse between successful
authentications.
|
java.lang.Integer |
getSecondsSinceLastBindPasswordValidation()
Retrieves the length of time in seconds that has passed since the server
last invoked password validators during a bind operation for the user.
|
java.lang.Integer |
getSecondsSinceLastLogin()
Retrieves the length of time in seconds since the user last successfully
authenticated to the server.
|
java.lang.Integer |
getSecondsSincePasswordChange()
Retrieves the length of time in seconds that has passed since the user's
password was last changed.
|
java.lang.Integer |
getSecondsSincePasswordExpiration()
Retrieves the length of time in seconds since the user's password expired.
|
java.lang.Integer |
getSecondsSincePasswordExpirationWarning()
Retrieves the length of time in seconds since the user received the first
warning about an upcoming password expiration.
|
java.lang.Integer |
getSecondsUntilAccountActivation()
Retrieves the length of time in seconds until the user's account will
become active.
|
java.lang.Integer |
getSecondsUntilAccountExpiration()
Retrieves the length of time in seconds until the user's account will
expire.
|
java.lang.Integer |
getSecondsUntilIdleLockout()
Retrieves the length of time in seconds until the user's account will be
locked for allowing too much time to elapse between successful
authentications.
|
java.lang.Integer |
getSecondsUntilPasswordExpiration()
Retrieves the length of time in seconds until the user's password will
expire.
|
java.lang.Integer |
getSecondsUntilPasswordExpirationWarning()
Retrieves the length of time in seconds until the user will be eligible to
receive a warning about an upcoming password expiration.
|
java.lang.Integer |
getSecondsUntilResetLockout()
Retrieves the length of time in seconds until the user's account will be
locked for failing to choose a new password after an administrative
reset.
|
java.lang.Integer |
getSecondsUntilRetiredPasswordExpiration()
Retrieves the length of time in seconds remaining until the user's retired
password expires and can no longer be used to authenticate.
|
java.util.List<PasswordQualityRequirement> |
getSelfChangePasswordQualityRequirements()
Retrieves the list of quality requirements that must be satisfied when the
associated user attempts to change their own password.
|
java.lang.Integer |
getUsedGraceLoginCount()
Retrieves the number of grace logins that the user has currently used.
|
java.lang.Boolean |
hasPasswordEncodedWithNonCurrentSettings()
Indicates whether the user has a static password that is encoded with
settings that don't match the current configuration for the associated
password storage scheme.
|
java.lang.String |
toString()
Retrieves a string representation of the password policy state information.
|
@NotNull public static final java.lang.String PASSWORD_POLICY_STATE_JSON_ATTRIBUTE
public PasswordPolicyStateJSON(@NotNull JSONObject passwordPolicyStateObject)
passwordPolicyStateObject
- The JSON object containing the encoded
password policy state.@Nullable public static PasswordPolicyStateJSON get(@NotNull LDAPInterface connection, @NotNull java.lang.String userDN) throws LDAPException
connection
- The connection to use to communicate with the server.
It must not be null
, and it must be established
and authenticated as an account with permission to
access the target user's password policy state
information.userDN
- The DN of the user for whom to retrieve the password
policy state. It must not be null
.null
because no password policy state information is
available for the user.LDAPException
- If a problem is encountered while trying to
retrieve the user's entry or decode the password
policy state JSON object.@Nullable public static PasswordPolicyStateJSON get(@NotNull Entry userEntry) throws LDAPException
userEntry
- The entry for the user for whom to obtain the password
policy state information. It must not be null
.null
if no password policy state information is
available for the user.LDAPException
- If a problem is encountered while trying to decode
the password policy state JSON object.@NotNull public JSONObject getPasswordPolicyStateJSONObject()
@Nullable public java.lang.String getPasswordPolicyDN()
null
if this was not included in
the password policy state JSON object.@Nullable public java.lang.Boolean getAccountIsUsable()
Boolean.TRUE
if the account is in a usable state,
Boolean.FALSE
if the account is not in a usable state, or
null
if this flag was not included in the password policy
state JSON object.@NotNull public java.util.List<PasswordPolicyStateAccountUsabilityError> getAccountUsabilityErrors()
@NotNull public java.util.List<PasswordPolicyStateAccountUsabilityWarning> getAccountUsabilityWarnings()
@NotNull public java.util.List<PasswordPolicyStateAccountUsabilityNotice> getAccountUsabilityNotices()
@Nullable public java.lang.Boolean getHasStaticPassword()
Boolean.TRUE
if the account has at least one static
password, Boolean.FALSE
if the account does not have any
static password, or null
if this flag was not included in
the password policy state JSON object.@Nullable public java.util.Date getPasswordChangedTime()
null
if this was not included in the password policy state
JSON object.@Nullable public java.lang.Integer getSecondsSincePasswordChange()
null
if this was not
included in the password policy state JSON object.@Nullable public java.lang.Boolean getAccountIsDisabled()
Boolean.TRUE
if the account has been administratively
disabled, Boolean.FALSE
if the account has not been
administratively disabled, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Boolean getAccountIsNotYetActive()
Boolean.TRUE
if the account is not yet active,
Boolean.FALSE
if the account either does not have an
activation time or if that time has already passed, or
null
if this flag was not included in the password policy
state JSON object.@Nullable public java.util.Date getAccountActivationTime()
null
if this was not included in the password policy
state JSON object.@Nullable public java.lang.Integer getSecondsUntilAccountActivation()
null
if this was not included in the password
policy state JSON object (e.g., because the user does not have an
activation time in the future).@Nullable public java.lang.Integer getSecondsSinceAccountActivation()
null
if this was not included in the password
policy state JSON object (e.g., because the user does not have an
activation time in the past).@Nullable public java.lang.Boolean getAccountIsExpired()
Boolean.TRUE
if the account is expired,
Boolean.FALSE
if the account is not expired, or
null
if this flag was not included in the password policy
state JSON object.@Nullable public java.util.Date getAccountExpirationTime()
null
if this was not included in the password policy state
JSON object.@Nullable public java.lang.Integer getSecondsUntilAccountExpiration()
null
if this was not included in the password
policy state JSON object (e.g., because the user does not have an
expiration time in the future).@Nullable public java.lang.Integer getSecondsSinceAccountExpiration()
null
if this was not included in the password policy
state JSON object (e.g., because the user does not have an
expiration time in the past).@Nullable public java.lang.Boolean getPasswordIsExpired()
Boolean.TRUE
if the password is expired,
Boolean.FALSE
if the password is not expired, or
null
if this flag was not included in the password policy
state JSON object.@Nullable public java.lang.Integer getMaximumPasswordAgeSeconds()
null
if this flag was not included in the password policy state JSON
object (e.g., because password expiration is not configured in the
password policy that governs the user).@Nullable public java.util.Date getPasswordExpirationTime()
null
if this was not included in the password policy state
JSON object (e.g., because password expiration is not configured
in the password policy that governs the user).@Nullable public java.lang.Integer getSecondsUntilPasswordExpiration()
null
if this was not included in the password
policy state JSON object (e.g., because password expiration is not
configured in the password policy that governs the user, or
because the user's password is already expired).@Nullable public java.lang.Integer getSecondsSincePasswordExpiration()
null
if this was not included in the password policy
state JSON object (e.g., because password expiration is not
configured in the password policy that governs the user, or
because the user's password is not expired).@Nullable public java.lang.Integer getPasswordExpirationWarningIntervalSeconds()
null
if this was not
included in the password policy state JSON object (e.g., because
password expiration is not configured in the password policy that
governs the user).@Nullable public java.lang.Boolean getExpirePasswordsWithoutWarning()
Boolean.TRUE
if the server will allow a user's password to
expire even if they have not been warned about an upcoming
expiration, Boolean.FALSE
if the server will ensure that
the user receives at least one warning before expiring the
password, or null
if this flag was not included in the
password policy state JSON object (e.g., because password
expiration is not configured in the password policy that governs
the user).@Nullable public java.lang.Boolean getPasswordExpirationWarningIssued()
Boolean.TRUE
if the user has received at least one warning
about an upcoming password expiration, Boolean.FALSE
if
the user has not been warned about an upcoming password
expiration, or null
if this flag was not included in the
password policy state JSON object (e.g., because password
expiration is not configured in the password policy that governs
the user).@Nullable public java.util.Date getPasswordExpirationWarningTime()
null
if this was not included in the
password policy state JSON object (e.g., because password
expiration is not configured in the password policy that governs
the user).@Nullable public java.lang.Integer getSecondsUntilPasswordExpirationWarning()
null
if this was not included in the password policy state
JSON object (e.g., because password expiration is not configured
in the password policy that governs the user, or because the user
has already been warned about an upcoming expiration).@Nullable public java.lang.Integer getSecondsSincePasswordExpirationWarning()
null
if
this was not included in the password policy state JSON object
(e.g., because password expiration is not configured in the
password policy that governs the user, or because the user has
not yet been warned about an upcoming expiration).@Nullable public java.lang.Boolean getAccountIsFailureLocked()
Boolean.TRUE
if the user account is locked as a result of
too many failed authentication attempts, Boolean.FALSE
if
the user account is not locked because of too many failed
authentication attempts, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getFailureLockoutCount()
null
if this was
not included in the password policy state JSON object (e.g.,
because account lockout is not configured in the password policy
that governs the user).@Nullable public java.lang.Integer getCurrentAuthenticationFailureCount()
null
if this was not included in the password
policy state JSON object (e.g., because account lockout is not
configured in the password policy that governs the user).@Nullable public java.lang.Integer getRemainingAuthenticationFailureCount()
null
if this was not included in
the password policy state JSON object (e.g., because account
lockout is not configured in the password policy that governs the
user).@NotNull public java.util.List<java.util.Date> getAuthenticationFailureTimes()
@Nullable public java.util.Date getFailureLockoutTime()
null
if this was
not included in the password policy state JSON object (e.g.,
because the user's account is not failure locked).@Nullable public java.lang.Integer getFailureLockoutDurationSeconds()
null
if this was not included in the password policy state
JSON object (e.g., because account lockout is not configured in
the password policy that governs the user, or because account
lockout is not temporary).@Nullable public java.util.Date getFailureLockoutExpirationTime()
null
if this was not included
in the password policy state JSON object (e.g., because the user's
account is not failure locked, or because the lockout is not
temporary).@Nullable public java.lang.Integer getSecondsRemainingInFailureLockout()
null
if this was not included in the password policy state
JSON object (e.g., because the user's account is not failure
locked, or because the lockout is not temporary).@Nullable public java.util.Date getLastLoginTime()
null
if this was not included in the password
policy state JSON object (e.g., because last login time tracking
is not configured in the password policy that governs the user).@Nullable public java.lang.Integer getSecondsSinceLastLogin()
null
if this was not
included in the password policy state JSON object (e.g., because
last login time tracking is not configured in the password policy
that governs the user).@Nullable public java.lang.String getLastLoginIPAddress()
null
if this was not included in the
password policy state JSON object (e.g., because last login IP
address tracking is not configured in the password policy that
governs the user).@Nullable public java.lang.Boolean getAccountIsIdleLocked()
Boolean.TRUE
if the user's account is currently
idle-locked, Boolean.FALSE
if the user's account is not
currently idle-locked, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getIdleLockoutIntervalSeconds()
null
if this was not included in the password policy state
JSON object (e.g., because idle lockout is not configured in the
password policy that governs the user).@Nullable public java.util.Date getIdleLockoutTime()
null
if this was not included in the
password policy state JSON object (e.g., because idle lockout is
not configured in the password policy that governs the user).@Nullable public java.lang.Integer getSecondsUntilIdleLockout()
null
if this was not included in the
password policy state JSON object (e.g., because idle lockout is
not configured in the password policy that governs the user, or
because the user's account is already idle-locked).@Nullable public java.lang.Integer getSecondsSinceIdleLockout()
null
if this was not included in the
password policy state JSON object (e.g., because idle lockout is
not configured in the password policy that governs the user, or
because the user's account is not idle-locked).@Nullable public java.lang.Boolean getMustChangePassword()
Boolean.TRUE
if the user must change their password before
they will be allowed to perform any other operations in the
server, Boolean.FALSE
if the user is not required to
change their password, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Boolean getAccountIsResetLocked()
Boolean.TRUE
if the user's account is currently
reset-locked, Boolean.FALSE
if the user's account is not
reset-locked, or null
if this flag was not included in the
password policy state JSON object.@Nullable public java.lang.Boolean getForceChangeOnAdd()
Boolean.TRUE
if users are required to choose a new
password the first time they authenticate after their account is
created, Boolean.FALSE
if users are not required to choose
a new password after their account is created, or null
if
this flag was not included in the password policy state JSON
object.@Nullable public java.lang.Boolean getForceChangeOnReset()
Boolean.TRUE
if users are required to choose a new
password the first time they authenticate after their password is
reset, Boolean.FALSE
if users are not required to choose
a new password after their password is reset, or null
if
this flag was not included in the password policy state JSON
object.@Nullable public java.lang.Integer getMaximumPasswordResetAgeSeconds()
null
if this was not included in the
password policy state JSON object (e.g., because reset lockout is
not configured in the password policy that governs the user).@Nullable public java.util.Date getResetLockoutTime()
null
if this was not included in
the password policy state JSON object (e.g., because reset lockout
is not configured in the password policy that governs the user,
or because the user's password has not been reset).@Nullable public java.lang.Integer getSecondsUntilResetLockout()
null
if this was not included in
the password policy state JSON object (e.g., because reset lockout
is not configured in the password policy that governs the user,
because the user's password has not been reset, or because the
user's account is already reset-locked).@Nullable public java.lang.Integer getMaximumPasswordHistoryCount()
null
if this was not
included in the password policy state JSON object (e.g., because
the password policy that governs the user is not configured to
maintain a password history, or because it maintains a password
history based on a duration rather than a count).@Nullable public java.lang.Integer getMaximumPasswordHistoryDurationSeconds()
null
if this was not included in the password policy
state JSON object (e.g., because the password policy that governs
the user is not configured to maintain a password history, or
because it maintains a password history based on a count rather
than a duration).@Nullable public java.lang.Integer getCurrentPasswordHistoryCount()
null
if this was not incldued in the password
policy state JSON object (e.g., because the password policy that
governs the user is not configured to maintain a password
history).@Nullable public java.lang.Boolean getIsWithinMinimumPasswordAge()
Boolean.TRUE
if the user is currently prohibited from
changing their password because not enough time has elapsed since
they last changed their password, Boolean.FALSE
if the
user is not prohibited from changing their password because of the
minimum password age, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getMinimumPasswordAgeSeconds()
null
if this was not included in the
password policy state JSON object (e.g., because no minimum
password age is configured in the password policy that governs the
user).@Nullable public java.util.Date getMinimumPasswordAgeExpirationTime()
null
if this was not included in the password policy state JSON
object (e.g., because no minimum password age is configured in the
password policy that governs the user, or because it has been
longer than the minimum age since they last changed their
password).@Nullable public java.lang.Integer getSecondsRemainingInMinimumPasswordAge()
null
if this was not included in the
password policy state JSON object (e.g., because no minimum
password age is configured in the password policy that governs the
user, or because it has been longer than the minimum age since
they last changed their password).@Nullable public java.lang.Integer getMaximumGraceLoginCount()
null
if
this was not included in the password policy state JSON object
(e.g., if grace logins are not configured in the password policy
that governs the user).@Nullable public java.lang.Integer getUsedGraceLoginCount()
null
if this was not included in the password
policy state JSON object (e.g., if grace logins are not configured
in the password policy that governs the user).@Nullable public java.lang.Integer getRemainingGraceLoginCount()
null
if this was not included in the password policy state JSON object
(e.g., if grace logins are not configured in the password policy
that governs the user).@NotNull public java.util.List<java.util.Date> getGraceLoginUseTimes()
@Nullable public java.lang.Boolean getHasRetiredPassword()
Boolean.TRUE
if the user account currently has a valid
retired password, Boolean.FALSE
if the user account does
not have a valid retired password, or null
if this flag
was not included in the password policy state JSON object.@Nullable public java.util.Date getRetiredPasswordExpirationTime()
null
if this was not included in the password policy state
JSON object (e.g., because the user does not have a retired
password).@Nullable public java.lang.Integer getSecondsUntilRetiredPasswordExpiration()
null
if this was not included in the
password policy state JSON object (e.g., because the user does not
have a retired password).@Nullable public java.lang.Boolean getRequireSecureAuthentication()
Boolean.TRUE
if the user will be required to authenticate
in a secure manner, Boolean.FALSE
if the user will not be
required to authenticate in a secure manner, or null
if
this flag was not included in the password policy state JSON
object.@Nullable public java.lang.Boolean getRequireSecurePasswordChanges()
Boolean.TRUE
if the user will be required to change their
password in a secure manner, Boolean.FALSE
if the user
will not be required to change their password in a secure manner,
or null
if this flag was not included in the password
policy state JSON object.@NotNull public java.util.List<java.lang.String> getAvailableSASLMechanisms()
@NotNull public java.util.List<java.lang.String> getAvailableOTPDeliveryMechanisms()
@Nullable public java.lang.Boolean getHasTOTPSharedSecret()
Boolean.TRUE
if the user account has at least one TOTP
shared secret, Boolean.FALSE
if the user account does not
have any TOTP shared secrets, or null
if this flag was not
included in the password policy state JSON object.@Nullable public java.lang.Boolean getHasRegisteredYubiKeyOTPDevice()
Boolean.TRUE
if the user account has at least one
registered YubiKey OTP device, Boolean.FALSE
if the user
account does not have any registered YubiKey OTP devices, or
null
if this flag was not included in the password policy
state JSON object.@Nullable public java.lang.Boolean getAccountIsValidationLocked()
Boolean.TRUE
if the user account is locked because it
contains a password that does not satisfy all of the configured
password validators, Boolean.FALSE
if the account is not
validation-locked, or null
if this flag was not included
in the password policy state JSON object.@Nullable public java.util.Date getLastBindPasswordValidationTime()
null
if this was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getSecondsSinceLastBindPasswordValidation()
null
if this was not included in the password
policy state JSON object.@Nullable public java.lang.Integer getMinimumBindPasswordValidationFrequencySeconds()
null
if this was not included in the
password policy state JSON object.@Nullable public java.lang.String getBindPasswordValidationFailureAction()
null
if this was not included in
the password policy state JSON object.@Nullable public RecentLoginHistory getRecentLoginHistory() throws LDAPException
null
if this was
not included in the password policy state JSON object.LDAPException
- If a problem occurs while trying to parse the
recent login history for the user.@Nullable public java.lang.Integer getMaximumRecentLoginHistorySuccessfulAuthenticationCount()
null
if this was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getMaximumRecentLoginHistorySuccessfulAuthenticationDurationSeconds()
null
if this was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getMaximumRecentLoginHistoryFailedAuthenticationCount()
null
if this was not
included in the password policy state JSON object.@Nullable public java.lang.Integer getMaximumRecentLoginHistoryFailedAuthenticationDurationSeconds()
null
if this was not
included in the password policy state JSON object.@NotNull public java.util.List<PasswordQualityRequirement> getAddPasswordQualityRequirements()
@NotNull public java.util.List<PasswordQualityRequirement> getSelfChangePasswordQualityRequirements()
@NotNull public java.util.List<PasswordQualityRequirement> getAdministrativeResetPasswordQualityRequirements()
@NotNull public java.util.List<PasswordQualityRequirement> getBindPasswordQualityRequirements()
@Nullable public java.lang.Boolean hasPasswordEncodedWithNonCurrentSettings()
Boolean.TRUE
if the account has a static password that
is encoded with non-current settings, Boolean.FALSE
if the
account does not have a static password that is encoded with
non-current settings, or null
if this flag was not
included in the password policy state JSON object.@NotNull public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getNonCurrentPasswordStorageSchemeSettingsExplanations()