The PasswordFieldDefinition renders two text boxes for entry and verification of passwords. 

The input text is masked in the field but the value is stored as clear text in the JCR.

If you want to store hashed password values, you can:

  • Use the password field to collect the value of the password entered by user and delegate the storage of the password and hashing to an underlying user manager. The user manager may be an internal Magnolia User Manager or an external user manager. See the Security app for an example of this approach.
  • Configure BCryptTransformer on the password field by specifying a transformerClass property in the field definition: 

    transformerClass = info.magnolia.ui.form.field.transformer.basic.BCryptTransformer

(warning) If you store a hashed value, you can no longer decode it to clear text. This is suitable when you want to authenticate against the password and only compare the stored hash against the hash of the password provided when logging in. If you need passwords in plain text so that they can be used to access other systems requiring authentication, we recommend you use the Magnolia Password Manager module.

classinfo.magnolia.ui.form.field.definition.PasswordFieldDefinition

Password field properties

Simple password definition:

form:
  tabs:
    - name: tabUser
      label: User
      fields:
        - name: password
          class: info.magnolia.ui.form.field.definition.PasswordFieldDefinition
          label: Password 

Node name

Value

 
form


 
tabs


 
tabUser


 
fields


 
password


 
class

info.magnolia.ui.form.field.definition.PasswordFieldDefinition

 
label

Password




You can use common field properties and the following properties in a password field definition:

Properties:

<field name>

required

Name of field

encode

optional, default is true

Encodes the password and visually masks the characters.

verification

optional, default is true

Verifies that the contents of the two boxes match. When set to false the verification (second) box is not rendered.

verificationMessage

optional, default is field.password.verificationMessage

Text displayed above the field. Displays as "Please verify your entry", retrieved from a message bundle.

verificationErrorMessage

optional, default is field.password.verificationErrorMessage

Text displayed when passwords don't match. Displays as "Passwords do not match", retrieved from a message bundle.

transformerClass

optional, default is info.magnolia.ui.form.field.transformer.basic.BasicTransformer

Property transformer class. Defines how the values are stored in the repository.

Add validators to define your own password policy such as minimum length and character types.

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels