Skip to content

Add documentation for Argon2 hashing algorithm #10163

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jul 8, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,7 @@ The Security plugin supports the following common settings:

- `plugins.security.authcz.admin_dn` (Static): Defines the DNs of certificates to which admin privileges should be assigned. Required.

- `plugins.security.roles_mapping_resolution` (Static): Defines how backend roles are mapped to Security roles.

Valid values are:
- `plugins.security.roles_mapping_resolution` (Static): Defines how backend roles are mapped to Security roles. The following values are supported:
- `MAPPING_ONLY`(Default): Mappings must be configured explicitly in `roles_mapping.yml`.
- `BACKENDROLES_ONLY`: Backend roles are mapped to security roles directly. Settings in `roles_mapping.yml` have no effect.
- `BOTH`: Backend roles are mapped to security roles both directly and through `roles_mapping.yml`.
Expand Down Expand Up @@ -125,27 +123,19 @@ The Security plugin supports the following expert-level settings:
If you change any of the following password hashing properties, you must rehash all internal passwords to ensure compatibility and security.
{: .warning}

- `plugins.security.password.hashing.algorithm`: (Static): Specifies the password hashing algorithm to use.

Valid values are:

- `plugins.security.password.hashing.algorithm`: (Static): Specifies the password hashing algorithm to use. The following values are supported:
- `BCrypt` (Default)
- `PBKDF2`
- `Argon2`

- `plugins.security.password.hashing.bcrypt.rounds` (Static): Specifies the number of rounds to use for password hashing with `BCrypt`. Valid values are between `4` and `31`, inclusive. Default is `12`.

- `plugins.security.password.hashing.bcrypt.minor` (Static): Specifies the minor version of the `BCrypt` algorithm to use for password hashing.

Valid values are:

- `plugins.security.password.hashing.bcrypt.minor` (Static): Specifies the minor version of the `BCrypt` algorithm to use for password hashing. The following values are supported:
- `A`
- `B`
- `Y` (Default)

- `plugins.security.password.hashing.pbkdf2.function` (Static): Specifies the pseudo-random function applied to the password.

Valid values are:

- `plugins.security.password.hashing.pbkdf2.function` (Static): Specifies the pseudo-random function applied to the password. The following values are supported:
- `SHA1`
- `SHA224`
- `SHA256` (Default)
Expand All @@ -156,6 +146,24 @@ If you change any of the following password hashing properties, you must rehash

- `plugins.security.password.hashing.pbkdf2.length` (Static): Specifies the desired length of the final derived key. Default is `256`.

- `plugins.security.password.hashing.argon2.iterations`: Specifies the number of passes over memory that the algorithm performs. Increasing this value raises CPU computation time and improves resistance to brute-force attacks. Default: `3`.

- `plugins.security.password.hashing.argon2.memory`: Specifies the amount of memory (in kibibytes) used during hashing. Default: `65536` (64 MiB).

- `plugins.security.password.hashing.argon2.parallelism`: Specifies the number of parallel threads used for computation. Default: `1`.

- `plugins.security.password.hashing.argon2.length`: Specifies the length (in bytes) of the resulting hash output. Default: `32`.

- `plugins.security.password.hashing.argon2.type`: Specifies which variant of Argon2 to use. The following values are supported:
- `Argon2i`
- `Argon2d`
- `Argon2id` (default)

- `plugins.security.password.hashing.argon2.version`: Specifies which version of Argon2 to use. The following values are supported:
- `16`
- `19` (default)



## Audit log settings

Expand Down
Loading