Interface BcryptPasswordStorageSchemeCfgClient
-
- All Superinterfaces:
ConfigurationClient
,PasswordStorageSchemeCfgClient
public interface BcryptPasswordStorageSchemeCfgClient extends PasswordStorageSchemeCfgClient
A client-side interface for reading and modifying Bcrypt Password Storage Scheme settings.The Bcrypt Password Storage Scheme provides a mechanism for encoding user passwords using the bcrypt message digest algorithm.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ManagedObjectDefinition<? extends BcryptPasswordStorageSchemeCfgClient,? extends BcryptPasswordStorageSchemeCfg>
definition()
Get the configuration definition associated with this Bcrypt Password Storage Scheme.ValueOrExpression<Integer>
getBcryptCost()
Gets the "bcrypt-cost" property.ValueOrExpression<String>
getJavaClass()
Gets the "java-class" property.ValueOrExpression<BcryptPasswordStorageSchemeCfgDefn.RehashPolicy>
getRehashPolicy()
Gets the "rehash-policy" property.void
setBcryptCost(ValueOrExpression<Integer> value)
Sets the "bcrypt-cost" property.void
setJavaClass(ValueOrExpression<String> value)
Sets the "java-class" property.void
setRehashPolicy(ValueOrExpression<BcryptPasswordStorageSchemeCfgDefn.RehashPolicy> value)
Sets the "rehash-policy" property.-
Methods inherited from interface org.forgerock.opendj.config.ConfigurationClient
commit, properties
-
Methods inherited from interface org.forgerock.opendj.server.config.client.PasswordStorageSchemeCfgClient
isEnabled, setEnabled
-
-
-
-
Method Detail
-
definition
ManagedObjectDefinition<? extends BcryptPasswordStorageSchemeCfgClient,? extends BcryptPasswordStorageSchemeCfg> definition()
Get the configuration definition associated with this Bcrypt Password Storage Scheme.- Specified by:
definition
in interfaceConfigurationClient
- Specified by:
definition
in interfacePasswordStorageSchemeCfgClient
- Returns:
- Returns the configuration definition associated with this Bcrypt Password Storage Scheme.
-
getBcryptCost
ValueOrExpression<Integer> getBcryptCost()
Gets the "bcrypt-cost" property.The cost parameter specifies a key expansion iteration count as a power of two. A default value of 12 (2^12 iterations) is considered in 2016 as a reasonable balance between responsiveness and security for regular users.
By default, changes to this setting impact only newly created and updated passwords. However, if the rehash-policy is set to always or only-increase, it causes the server to recalculate each user's password hash on their next authentication, and write the new hash to the user's entry on disk. Changing the number of iterations therefore leads to a short-term spike in CPU and disk use as the server updates each user's password when they next authenticate. Longer term, increasing this settings results in more secure passwords at the expense of longer response times and lower throughput.
Default value:
12
- Returns:
- Returns the value of the "bcrypt-cost" property.
-
setBcryptCost
void setBcryptCost(ValueOrExpression<Integer> value) throws PropertyException
Sets the "bcrypt-cost" property.The cost parameter specifies a key expansion iteration count as a power of two. A default value of 12 (2^12 iterations) is considered in 2016 as a reasonable balance between responsiveness and security for regular users.
By default, changes to this setting impact only newly created and updated passwords. However, if the rehash-policy is set to always or only-increase, it causes the server to recalculate each user's password hash on their next authentication, and write the new hash to the user's entry on disk. Changing the number of iterations therefore leads to a short-term spike in CPU and disk use as the server updates each user's password when they next authenticate. Longer term, increasing this settings results in more secure passwords at the expense of longer response times and lower throughput.
- Parameters:
value
- The value of the "bcrypt-cost" property.- Throws:
PropertyException
- If the new value is invalid.
-
getJavaClass
@MandatoryProperty ValueOrExpression<String> getJavaClass()
Gets the "java-class" property.Specifies the fully-qualified name of the Java class that provides the Bcrypt Password Storage Scheme implementation.
Default value:
org.opends.server.extensions.BcryptPasswordStorageScheme
- Specified by:
getJavaClass
in interfacePasswordStorageSchemeCfgClient
- Returns:
- Returns the value of the "java-class" property.
-
setJavaClass
@MandatoryProperty void setJavaClass(ValueOrExpression<String> value) throws PropertyException
Sets the "java-class" property.Specifies the fully-qualified name of the Java class that provides the Bcrypt Password Storage Scheme implementation.
- Specified by:
setJavaClass
in interfacePasswordStorageSchemeCfgClient
- Parameters:
value
- The value of the "java-class" property.- Throws:
PropertyException
- If the new value is invalid.
-
getRehashPolicy
ValueOrExpression<BcryptPasswordStorageSchemeCfgDefn.RehashPolicy> getRehashPolicy()
Gets the "rehash-policy" property.Indicates whether the server should rehash passwords after the cost has been changed.
Passwords will be rehashed when a user successfully authenticates. Note that rehashing will increase the write load on the server.
Default value:
never
- Returns:
- Returns the value of the "rehash-policy" property.
-
setRehashPolicy
void setRehashPolicy(ValueOrExpression<BcryptPasswordStorageSchemeCfgDefn.RehashPolicy> value) throws PropertyException
Sets the "rehash-policy" property.Indicates whether the server should rehash passwords after the cost has been changed.
Passwords will be rehashed when a user successfully authenticates. Note that rehashing will increase the write load on the server.
- Parameters:
value
- The value of the "rehash-policy" property.- Throws:
PropertyException
- If the new value is invalid.
-
-