org.opends.server.admin.std.meta
Class PasswordPolicyCfgDefn

java.lang.Object
  extended by org.opends.server.admin.AbstractManagedObjectDefinition<C,S>
      extended by org.opends.server.admin.ManagedObjectDefinition<PasswordPolicyCfgClient,PasswordPolicyCfg>
          extended by org.opends.server.admin.std.meta.PasswordPolicyCfgDefn

public final class PasswordPolicyCfgDefn
extends ManagedObjectDefinition<PasswordPolicyCfgClient,PasswordPolicyCfg>

An interface for querying the Password Policy managed object definition meta information.

Password Policies define a number of password management rules, as well as requirements for authentication processing.


Nested Class Summary
static class PasswordPolicyCfgDefn.StateUpdateFailurePolicy
          Defines the set of permissable values for the "state-update-failure-policy" property.
 
Method Summary
 PasswordPolicyCfgClient createClientConfiguration(ManagedObject<? extends PasswordPolicyCfgClient> impl)
          Creates a client configuration view of the provided managed object.
 PasswordPolicyCfg createServerConfiguration(ServerManagedObject<? extends PasswordPolicyCfg> impl)
          Creates a server configuration view of the provided server managed object.
 AggregationPropertyDefinition<AccountStatusNotificationHandlerCfgClient,AccountStatusNotificationHandlerCfg> getAccountStatusNotificationHandlerPropertyDefinition()
          Get the "account-status-notification-handler" property definition.
 BooleanPropertyDefinition getAllowExpiredPasswordChangesPropertyDefinition()
          Get the "allow-expired-password-changes" property definition.
 BooleanPropertyDefinition getAllowMultiplePasswordValuesPropertyDefinition()
          Get the "allow-multiple-password-values" property definition.
 BooleanPropertyDefinition getAllowPreEncodedPasswordsPropertyDefinition()
          Get the "allow-pre-encoded-passwords" property definition.
 BooleanPropertyDefinition getAllowUserPasswordChangesPropertyDefinition()
          Get the "allow-user-password-changes" property definition.
 AggregationPropertyDefinition<PasswordStorageSchemeCfgClient,PasswordStorageSchemeCfg> getDefaultPasswordStorageSchemePropertyDefinition()
          Get the "default-password-storage-scheme" property definition.
 AggregationPropertyDefinition<PasswordStorageSchemeCfgClient,PasswordStorageSchemeCfg> getDeprecatedPasswordStorageSchemePropertyDefinition()
          Get the "deprecated-password-storage-scheme" property definition.
 BooleanPropertyDefinition getExpirePasswordsWithoutWarningPropertyDefinition()
          Get the "expire-passwords-without-warning" property definition.
 BooleanPropertyDefinition getForceChangeOnAddPropertyDefinition()
          Get the "force-change-on-add" property definition.
 BooleanPropertyDefinition getForceChangeOnResetPropertyDefinition()
          Get the "force-change-on-reset" property definition.
 IntegerPropertyDefinition getGraceLoginCountPropertyDefinition()
          Get the "grace-login-count" property definition.
 DurationPropertyDefinition getIdleLockoutIntervalPropertyDefinition()
          Get the "idle-lockout-interval" property definition.
static PasswordPolicyCfgDefn getInstance()
          Get the Password Policy configuration definition singleton.
 AttributeTypePropertyDefinition getLastLoginTimeAttributePropertyDefinition()
          Get the "last-login-time-attribute" property definition.
 StringPropertyDefinition getLastLoginTimeFormatPropertyDefinition()
          Get the "last-login-time-format" property definition.
 DurationPropertyDefinition getLockoutDurationPropertyDefinition()
          Get the "lockout-duration" property definition.
 IntegerPropertyDefinition getLockoutFailureCountPropertyDefinition()
          Get the "lockout-failure-count" property definition.
 DurationPropertyDefinition getLockoutFailureExpirationIntervalPropertyDefinition()
          Get the "lockout-failure-expiration-interval" property definition.
 DurationPropertyDefinition getMaxPasswordAgePropertyDefinition()
          Get the "max-password-age" property definition.
 DurationPropertyDefinition getMaxPasswordResetAgePropertyDefinition()
          Get the "max-password-reset-age" property definition.
 DurationPropertyDefinition getMinPasswordAgePropertyDefinition()
          Get the "min-password-age" property definition.
 AttributeTypePropertyDefinition getPasswordAttributePropertyDefinition()
          Get the "password-attribute" property definition.
 BooleanPropertyDefinition getPasswordChangeRequiresCurrentPasswordPropertyDefinition()
          Get the "password-change-requires-current-password" property definition.
 DurationPropertyDefinition getPasswordExpirationWarningIntervalPropertyDefinition()
          Get the "password-expiration-warning-interval" property definition.
 AggregationPropertyDefinition<PasswordGeneratorCfgClient,PasswordGeneratorCfg> getPasswordGeneratorPropertyDefinition()
          Get the "password-generator" property definition.
 IntegerPropertyDefinition getPasswordHistoryCountPropertyDefinition()
          Get the "password-history-count" property definition.
 DurationPropertyDefinition getPasswordHistoryDurationPropertyDefinition()
          Get the "password-history-duration" property definition.
 AggregationPropertyDefinition<PasswordValidatorCfgClient,PasswordValidatorCfg> getPasswordValidatorPropertyDefinition()
          Get the "password-validator" property definition.
 StringPropertyDefinition getPreviousLastLoginTimeFormatPropertyDefinition()
          Get the "previous-last-login-time-format" property definition.
 StringPropertyDefinition getRequireChangeByTimePropertyDefinition()
          Get the "require-change-by-time" property definition.
 BooleanPropertyDefinition getRequireSecureAuthenticationPropertyDefinition()
          Get the "require-secure-authentication" property definition.
 BooleanPropertyDefinition getRequireSecurePasswordChangesPropertyDefinition()
          Get the "require-secure-password-changes" property definition.
 java.lang.Class<PasswordPolicyCfg> getServerConfigurationClass()
          Gets the server configuration class instance associated with this managed object definition.
 BooleanPropertyDefinition getSkipValidationForAdministratorsPropertyDefinition()
          Get the "skip-validation-for-administrators" property definition.
 EnumPropertyDefinition<PasswordPolicyCfgDefn.StateUpdateFailurePolicy> getStateUpdateFailurePolicyPropertyDefinition()
          Get the "state-update-failure-policy" property definition.
 
Methods inherited from class org.opends.server.admin.AbstractManagedObjectDefinition
getAggregationPropertyDefinition, getAggregationPropertyDefinitions, getAllAggregationPropertyDefinitions, getAllChildren, getAllConstraints, getAllPropertyDefinitions, getAllRelationDefinitions, getAllReverseAggregationPropertyDefinitions, getAllReverseRelationDefinitions, getAllTags, getChild, getChildren, getConstraints, getDescription, getDescription, getName, getParent, getPropertyDefinition, getPropertyDefinitions, getRelationDefinition, getRelationDefinitions, getReverseAggregationPropertyDefinitions, getReverseRelationDefinitions, getSynopsis, getSynopsis, getUserFriendlyName, getUserFriendlyName, getUserFriendlyPluralName, getUserFriendlyPluralName, hasChildren, hasOption, hasTag, initialize, isChildOf, isParentOf, isTop, registerConstraint, registerOption, registerPropertyDefinition, registerRelationDefinition, registerTag, resolveManagedObjectDefinition, toString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getInstance

public static PasswordPolicyCfgDefn getInstance()
Get the Password Policy configuration definition singleton.

Returns:
Returns the Password Policy configuration definition singleton.

createClientConfiguration

public PasswordPolicyCfgClient createClientConfiguration(ManagedObject<? extends PasswordPolicyCfgClient> impl)
Creates a client configuration view of the provided managed object. Modifications made to the underlying managed object will be reflected in the client configuration view and vice versa.

Specified by:
createClientConfiguration in class ManagedObjectDefinition<PasswordPolicyCfgClient,PasswordPolicyCfg>
Parameters:
impl - The managed object.
Returns:
Returns a client configuration view of the provided managed object.

createServerConfiguration

public PasswordPolicyCfg createServerConfiguration(ServerManagedObject<? extends PasswordPolicyCfg> impl)
Creates a server configuration view of the provided server managed object.

Specified by:
createServerConfiguration in class ManagedObjectDefinition<PasswordPolicyCfgClient,PasswordPolicyCfg>
Parameters:
impl - The server managed object.
Returns:
Returns a server configuration view of the provided server managed object.

getServerConfigurationClass

public java.lang.Class<PasswordPolicyCfg> getServerConfigurationClass()
Gets the server configuration class instance associated with this managed object definition.

Specified by:
getServerConfigurationClass in class ManagedObjectDefinition<PasswordPolicyCfgClient,PasswordPolicyCfg>
Returns:
Returns the server configuration class instance associated with this managed object definition.

getAccountStatusNotificationHandlerPropertyDefinition

public AggregationPropertyDefinition<AccountStatusNotificationHandlerCfgClient,AccountStatusNotificationHandlerCfg> getAccountStatusNotificationHandlerPropertyDefinition()
Get the "account-status-notification-handler" property definition.

Specifies the names of the account status notification handlers that are used with the associated password storage scheme.

Returns:
Returns the "account-status-notification-handler" property definition.

getAllowExpiredPasswordChangesPropertyDefinition

public BooleanPropertyDefinition getAllowExpiredPasswordChangesPropertyDefinition()
Get the "allow-expired-password-changes" property definition.

Indicates whether a user whose password is expired is still allowed to change that password using the password modify extended operation.

Returns:
Returns the "allow-expired-password-changes" property definition.

getAllowMultiplePasswordValuesPropertyDefinition

public BooleanPropertyDefinition getAllowMultiplePasswordValuesPropertyDefinition()
Get the "allow-multiple-password-values" property definition.

Indicates whether user entries can have multiple distinct values for the password attribute.

This is potentially dangerous because many mechanisms used to change the password do not work well with such a configuration. If multiple password values are allowed, then any of them can be used to authenticate, and they are all subject to the same policy constraints.

Returns:
Returns the "allow-multiple-password-values" property definition.

getAllowPreEncodedPasswordsPropertyDefinition

public BooleanPropertyDefinition getAllowPreEncodedPasswordsPropertyDefinition()
Get the "allow-pre-encoded-passwords" property definition.

Indicates whether users can change their passwords by providing a pre-encoded value.

This can cause a security risk because the clear-text version of the password is not known and therefore validation checks cannot be applied to it.

Returns:
Returns the "allow-pre-encoded-passwords" property definition.

getAllowUserPasswordChangesPropertyDefinition

public BooleanPropertyDefinition getAllowUserPasswordChangesPropertyDefinition()
Get the "allow-user-password-changes" property definition.

Indicates whether users can change their own passwords.

This check is made in addition to access control evaluation. Both must allow the password change for it to occur.

Returns:
Returns the "allow-user-password-changes" property definition.

getDefaultPasswordStorageSchemePropertyDefinition

public AggregationPropertyDefinition<PasswordStorageSchemeCfgClient,PasswordStorageSchemeCfg> getDefaultPasswordStorageSchemePropertyDefinition()
Get the "default-password-storage-scheme" property definition.

Specifies the names of the password storage schemes that are used to encode clear-text passwords for this password policy.

Returns:
Returns the "default-password-storage-scheme" property definition.

getDeprecatedPasswordStorageSchemePropertyDefinition

public AggregationPropertyDefinition<PasswordStorageSchemeCfgClient,PasswordStorageSchemeCfg> getDeprecatedPasswordStorageSchemePropertyDefinition()
Get the "deprecated-password-storage-scheme" property definition.

Specifies the names of the password storage schemes that are considered deprecated for this password policy.

If a user with this password policy authenticates to the server and his/her password is encoded with a deprecated scheme, those values are removed and replaced with values encoded using the default password storage scheme(s).

Returns:
Returns the "deprecated-password-storage-scheme" property definition.

getExpirePasswordsWithoutWarningPropertyDefinition

public BooleanPropertyDefinition getExpirePasswordsWithoutWarningPropertyDefinition()
Get the "expire-passwords-without-warning" property definition.

Indicates whether the Directory Server allows a user's password to expire even if that user has never seen an expiration warning notification.

If this property is true, accounts always expire when the expiration time arrives. If this property is false disabled, the user always receives at least one warning notification, and the password expiration is set to the warning time plus the warning interval.

Returns:
Returns the "expire-passwords-without-warning" property definition.

getForceChangeOnAddPropertyDefinition

public BooleanPropertyDefinition getForceChangeOnAddPropertyDefinition()
Get the "force-change-on-add" property definition.

Indicates whether users are forced to change their passwords upon first authenticating to the Directory Server after their account has been created.

Returns:
Returns the "force-change-on-add" property definition.

getForceChangeOnResetPropertyDefinition

public BooleanPropertyDefinition getForceChangeOnResetPropertyDefinition()
Get the "force-change-on-reset" property definition.

Indicates whether users are forced to change their passwords if they are reset by an administrator.

For this purpose, anyone with permission to change a given user's password other than that user is considered an administrator.

Returns:
Returns the "force-change-on-reset" property definition.

getGraceLoginCountPropertyDefinition

public IntegerPropertyDefinition getGraceLoginCountPropertyDefinition()
Get the "grace-login-count" property definition.

Specifies the number of grace logins that a user is allowed after the account has expired to allow that user to choose a new password.

A value of 0 indicates that no grace logins are allowed.

Returns:
Returns the "grace-login-count" property definition.

getIdleLockoutIntervalPropertyDefinition

public DurationPropertyDefinition getIdleLockoutIntervalPropertyDefinition()
Get the "idle-lockout-interval" property definition.

Specifies the maximum length of time that an account may remain idle (that is, the associated user does not authenticate to the server) before that user is locked out.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds indicates that idle accounts are not automatically locked out. This feature is available only if the last login time is maintained.

Returns:
Returns the "idle-lockout-interval" property definition.

getLastLoginTimeAttributePropertyDefinition

public AttributeTypePropertyDefinition getLastLoginTimeAttributePropertyDefinition()
Get the "last-login-time-attribute" property definition.

Specifies the name or OID of the attribute type that is used to hold the last login time for users with the associated password policy.

This attribute type must be defined in the Directory Server schema and must either be defined as an operational attribute or must be allowed by the set of objectClasses for all users with the associated password policy.

Returns:
Returns the "last-login-time-attribute" property definition.

getLastLoginTimeFormatPropertyDefinition

public StringPropertyDefinition getLastLoginTimeFormatPropertyDefinition()
Get the "last-login-time-format" property definition.

Specifies the format string that is used to generate the last login time value for users with the associated password policy.

This format string conforms to the syntax described in the API documentation for the java.text.SimpleDateFormat class.

Returns:
Returns the "last-login-time-format" property definition.

getLockoutDurationPropertyDefinition

public DurationPropertyDefinition getLockoutDurationPropertyDefinition()
Get the "lockout-duration" property definition.

Specifies the length of time that an account is locked after too many authentication failures.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds indicates that the account must remain locked until an administrator resets the password.

Returns:
Returns the "lockout-duration" property definition.

getLockoutFailureCountPropertyDefinition

public IntegerPropertyDefinition getLockoutFailureCountPropertyDefinition()
Get the "lockout-failure-count" property definition.

Specifies the maximum number of authentication failures that a user is allowed before the account is locked out.

A value of 0 indicates that accounts are never locked out due to failed attempts.

Returns:
Returns the "lockout-failure-count" property definition.

getLockoutFailureExpirationIntervalPropertyDefinition

public DurationPropertyDefinition getLockoutFailureExpirationIntervalPropertyDefinition()
Get the "lockout-failure-expiration-interval" property definition.

Specifies the length of time before an authentication failure is no longer counted against a user for the purposes of account lockout.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds indicates that the authentication failures must never expire. The failure count is always cleared upon a successful authentication.

Returns:
Returns the "lockout-failure-expiration-interval" property definition.

getMaxPasswordAgePropertyDefinition

public DurationPropertyDefinition getMaxPasswordAgePropertyDefinition()
Get the "max-password-age" property definition.

Specifies the maximum length of time that a user can continue using the same password before it must be changed (that is, the password expiration interval).

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds disables password expiration.

Returns:
Returns the "max-password-age" property definition.

getMaxPasswordResetAgePropertyDefinition

public DurationPropertyDefinition getMaxPasswordResetAgePropertyDefinition()
Get the "max-password-reset-age" property definition.

Specifies the maximum length of time that users have to change passwords after they have been reset by an administrator before they become locked.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds disables this feature.

Returns:
Returns the "max-password-reset-age" property definition.

getMinPasswordAgePropertyDefinition

public DurationPropertyDefinition getMinPasswordAgePropertyDefinition()
Get the "min-password-age" property definition.

Specifies the minimum length of time after a password change before the user is allowed to change the password again.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. This setting can be used to prevent users from changing their passwords repeatedly over a short period of time to flush an old password from the history so that it can be re-used.

Returns:
Returns the "min-password-age" property definition.

getPasswordAttributePropertyDefinition

public AttributeTypePropertyDefinition getPasswordAttributePropertyDefinition()
Get the "password-attribute" property definition.

Specifies the attribute type used to hold user passwords.

This attribute type must be defined in the server schema, and it must have either the user password or auth password syntax.

Returns:
Returns the "password-attribute" property definition.

getPasswordChangeRequiresCurrentPasswordPropertyDefinition

public BooleanPropertyDefinition getPasswordChangeRequiresCurrentPasswordPropertyDefinition()
Get the "password-change-requires-current-password" property definition.

Indicates whether user password changes must use the password modify extended operation and must include the user's current password before the change is allowed.

Returns:
Returns the "password-change-requires-current-password" property definition.

getPasswordExpirationWarningIntervalPropertyDefinition

public DurationPropertyDefinition getPasswordExpirationWarningIntervalPropertyDefinition()
Get the "password-expiration-warning-interval" property definition.

Specifies the maximum length of time before a user's password actually expires that the server begins to include warning notifications in bind responses for that user.

The value of this attribute is an integer followed by a unit of seconds, minutes, hours, days, or weeks. A value of 0 seconds disables the warning interval.

Returns:
Returns the "password-expiration-warning-interval" property definition.

getPasswordGeneratorPropertyDefinition

public AggregationPropertyDefinition<PasswordGeneratorCfgClient,PasswordGeneratorCfg> getPasswordGeneratorPropertyDefinition()
Get the "password-generator" property definition.

Specifies the name of the password generator that is used with the associated password policy.

This is used in conjunction with the password modify extended operation to generate a new password for a user when none was provided in the request.

Returns:
Returns the "password-generator" property definition.

getPasswordHistoryCountPropertyDefinition

public IntegerPropertyDefinition getPasswordHistoryCountPropertyDefinition()
Get the "password-history-count" property definition.

Specifies the maximum number of former passwords to maintain in the password history.

When choosing a new password, the proposed password is checked to ensure that it does not match the current password, nor any other password in the history list. A value of zero indicates that either no password history is to be maintained (if the password history duration has a value of zero seconds), or that there is no maximum number of passwords to maintain in the history (if the password history duration has a value greater than zero seconds).

Returns:
Returns the "password-history-count" property definition.

getPasswordHistoryDurationPropertyDefinition

public DurationPropertyDefinition getPasswordHistoryDurationPropertyDefinition()
Get the "password-history-duration" property definition.

Specifies the maximum length of time that passwords remain in the password history.

When choosing a new password, the proposed password is checked to ensure that it does not match the current password, nor any other password in the history list. A value of zero seconds indicates that either no password history is to be maintained (if the password history count has a value of zero), or that there is no maximum duration for passwords in the history (if the password history count has a value greater than zero).

Returns:
Returns the "password-history-duration" property definition.

getPasswordValidatorPropertyDefinition

public AggregationPropertyDefinition<PasswordValidatorCfgClient,PasswordValidatorCfg> getPasswordValidatorPropertyDefinition()
Get the "password-validator" property definition.

Specifies the names of the password validators that are used with the associated password storage scheme.

The password validators are invoked when a user attempts to provide a new password, to determine whether the new password is acceptable.

Returns:
Returns the "password-validator" property definition.

getPreviousLastLoginTimeFormatPropertyDefinition

public StringPropertyDefinition getPreviousLastLoginTimeFormatPropertyDefinition()
Get the "previous-last-login-time-format" property definition.

Specifies the format string(s) that might have been used with the last login time at any point in the past for users associated with the password policy.

These values are used to make it possible to parse previous values, but are not used to set new values. The format strings conform to the syntax described in the API documentation for the java.text.SimpleDateFormat class.

Returns:
Returns the "previous-last-login-time-format" property definition.

getRequireChangeByTimePropertyDefinition

public StringPropertyDefinition getRequireChangeByTimePropertyDefinition()
Get the "require-change-by-time" property definition.

Specifies the time by which all users with the associated password policy must change their passwords.

The value is expressed in a generalized time format. If this time is equal to the current time or is in the past, then all users are required to change their passwords immediately. The behavior of the server in this mode is identical to the behavior observed when users are forced to change their passwords after an administrative reset.

Returns:
Returns the "require-change-by-time" property definition.

getRequireSecureAuthenticationPropertyDefinition

public BooleanPropertyDefinition getRequireSecureAuthenticationPropertyDefinition()
Get the "require-secure-authentication" property definition.

Indicates whether users with the associated password policy are required to authenticate in a secure manner.

This might mean either using a secure communication channel between the client and the server, or using a SASL mechanism that does not expose the credentials.

Returns:
Returns the "require-secure-authentication" property definition.

getRequireSecurePasswordChangesPropertyDefinition

public BooleanPropertyDefinition getRequireSecurePasswordChangesPropertyDefinition()
Get the "require-secure-password-changes" property definition.

Indicates whether users with the associated password policy are required to change their password in a secure manner that does not expose the credentials.

Returns:
Returns the "require-secure-password-changes" property definition.

getSkipValidationForAdministratorsPropertyDefinition

public BooleanPropertyDefinition getSkipValidationForAdministratorsPropertyDefinition()
Get the "skip-validation-for-administrators" property definition.

Indicates whether passwords set by administrators are allowed to bypass the password validation process that is required for user password changes.

Returns:
Returns the "skip-validation-for-administrators" property definition.

getStateUpdateFailurePolicyPropertyDefinition

public EnumPropertyDefinition<PasswordPolicyCfgDefn.StateUpdateFailurePolicy> getStateUpdateFailurePolicyPropertyDefinition()
Get the "state-update-failure-policy" property definition.

Specifies how the server deals with the inability to update password policy state information during an authentication attempt.

In particular, this property can be used to control whether an otherwise successful bind operation fails if a failure occurs while attempting to update password policy state information (for example, to clear a record of previous authentication failures or to update the last login time). It can also be used to control whether to reject a bind request if it is known ahead of time that it will not be possible to update the authentication failure times in the event of an unsuccessful bind attempt (for example, if the backend writability mode is disabled).

Returns:
Returns the "state-update-failure-policy" property definition.