Import user passwords

You can provide password hashes during an import under the password_hash field. We are able to develop new algorithms to ensure full compatibility with your database. When a plain text password is used, the password is hashed during the import using the Bcrypt algorithm. When hashed passwords are used, the password is hashed using Bcrypt only after the user’s first login.

This is only available for users who have never logged in.

If a user has, in fact, already logged in at least once, the password_hash field in an updated user import job will remain the same and not be updated. In other words, the old password will remain and is not updated.

Allowed algorithms
Algorithm Notes

bcrypt

md5

Can be used with optional salt and iterations parameters where salt is used as a prefix.

sha1

Can be used with optional salt parameter used as a postfix.

sha256

Can be used with optional salt and iterations parameters where salt is used as a prefix.

sha512

Can be used with optional salt parameter used as a postfix.

sha512Prefixed

Can be used with optional prefix and salt parameters where prefix used as a prefix and salt is used as a postfix.

drupalSha512

Cannot be used with optional parameters.

sha256PostSalt

Can be used with optional salt and iterations parameters where salt is used as a postfix.

magentoSha256

Cannot be used with optional parameters.

magento

Support for hashes from magento in the form hash:salt:v1:v2 with v1 and v2 being the hashes applied in succession (when the hashes have been migrated.)

No other parameters are taken into account as the hash contains everything needed.
Use this instead of magentoSha256 if you require a more generic approach.

FirebaseScrypt

Support for hashes from the Firebase variant of Scrypt in the form hash:salt:salt_separator:signer_key:rounds:memory_cost.

No other parameters are taken into account as the hash contains everything needed.

plaintext

Example

  • JSON

  • CSV

{
  "email" : "emmanuel.scholt@example.com",
  "password_hash" : { (1)
      "value" : "$S$5T/ViD4qlx6qHTQAci8eEbCuP/MVsoO8OSfU.xJsykqT5H6BXowl",
      "algorithm" : "sha256PostSalt",
      "salt" : "azdAAZeQw"
  }
}
1 Where the password_hash object contains the pertinent information.
email,password_hash.value,password_hash.algorithm,password_hash.iterations,password_hash.salt
emmanuel.scholt@example.com,$S$5T/ViD4qlx6qHTQAci8eEbCuP/MVsoO8OSfU.xJsykqT5H6BXowl,sha256PostSalt,10,azdAAZeQw