Class BcryptPasswordStorageSchemeCfgDefn

    • Method Detail

      • getInstance

        public static BcryptPasswordStorageSchemeCfgDefn getInstance()
        Get the Bcrypt Password Storage Scheme configuration definition singleton.
        Returns:
        Returns the Bcrypt Password Storage Scheme configuration definition singleton.
      • getBcryptCostPropertyDefinition

        public IntegerPropertyDefinition getBcryptCostPropertyDefinition()
        Get the "bcrypt-cost" property definition.

        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.

        Returns:
        Returns the "bcrypt-cost" property definition.
      • getEnabledPropertyDefinition

        public BooleanPropertyDefinition getEnabledPropertyDefinition()
        Get the "enabled" property definition.

        Indicates whether the Bcrypt Password Storage Scheme is enabled for use.

        Returns:
        Returns the "enabled" property definition.
      • getJavaClassPropertyDefinition

        public ClassPropertyDefinition getJavaClassPropertyDefinition()
        Get the "java-class" property definition.

        Specifies the fully-qualified name of the Java class that provides the Bcrypt Password Storage Scheme implementation.

        Returns:
        Returns the "java-class" property definition.
      • getRehashPolicyPropertyDefinition

        public EnumPropertyDefinition<BcryptPasswordStorageSchemeCfgDefn.RehashPolicy> getRehashPolicyPropertyDefinition()
        Get the "rehash-policy" property definition.

        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.

        Returns:
        Returns the "rehash-policy" property definition.