Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
858b9bf
Add documentation about new Vault Listener params
biazmoreira Sep 23, 2025
e5cc892
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
26227a7
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
655b2d5
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
3ad75c0
Update content/vault/v1.20.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
6b04e60
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
32ee381
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
65cddf6
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
301da44
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
39d74bd
Update content/vault/v1.20.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
cb45031
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
fedb87b
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
69f3459
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
a691a92
Update content/vault/v1.20.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
c8a6f25
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
436c000
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
834a9df
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
9df76be
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
8021869
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
8695ed6
Update content/vault/v1.16.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
6fb1eaf
Update content/vault/v1.18.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
5d84691
Update content/vault/v1.19.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
7bf1b32
Update content/vault/v1.20.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
c28837e
Update content/vault/v1.20.x/content/docs/configuration/listener/tcp/…
biazmoreira Sep 23, 2025
790600c
Apply suggestions from code review
biazmoreira Sep 23, 2025
f217bc4
Merge branch 'main' into biazmoreira/VAULT-39657
biazmoreira Sep 23, 2025
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 @@ -280,6 +280,42 @@ default value in the `"/sys/config/ui"` [API endpoint](/vault/api-docs/system/co
this listener. The default configuration will honor the global
[configuration](/vault/docs/configuration/request-limiter).

The JSON parsing limits like `max_json_depth` and `max_json_token` have
intentionally permissive defaults to suport a wide range of use cases. The
primary constraints on parsing limits are available RAM and CPU. We recommend
tuning your JSON parsing limits down from the defaults to match your specific
application needs and available resourcess. Due to the way the parsing limits
interact, running with permissive defaults in a low-resource environment like
a lightweight container can increase the risk that a large, complex JSON
payload could exhaust the available resources.

- `max_json_depth` `(int: 500)` – Specifies the maximum nesting depth of a JSON
payload. Limiting object depth mitigates the risk of stack exhaustion from
deeply nested objects, which could lead to a Denial of Service (DoS).

- `max_json_string_value_length` `(int: 1048576)` – Defines the maximum allowed
length in bytes for a single string value within a JSON payload. Limiting
string length provides a critical defense against excessive memory allocation
attacks where a client might send a very large string to exhaust server memory.
Defaults to 1MB.

- `max_json_object_entry_count` `(int: 10000)` – Sets the maximum number of
key-value pairs allowed in a single JSON object. Limiting the entry count on
JSON objects helps mitigate hash-collision Denial of Service (HashDoS) attacks
and prevents general resource exhaustion from objects with an excessive number
of entries.

- `max_json_array_element_count` `(int: 10000)` – Determines the maximum number
of elements permitted in a single JSON array. Limiting the number of array
elements prevents a single request from causing excessive memory consumption
when processing large lists.

- `max_json_token` `(int: 500000)` – Sets the maximum total number of tokens
(e.g., keys, values, braces, brackets) permitted in a single JSON payload.
Setting a limit on tokens acts as an overall complexity limit to provide a
safeguard against attacks that use a huge number of small elements to exhaust
CPU and memory.

### `telemetry` parameters

- `unauthenticated_metrics_access` `(bool: false)` - If set to true, allows
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,42 @@ default value in the `"/sys/config/ui"` [API endpoint](/vault/api-docs/system/co
- `disable_replication_status_endpoints` `(bool: false)` - Disables replication
status endpoints for the configured listener when set to `true`.

The JSON parsing limits like `max_json_depth` and `max_json_token` have
intentionally permissive defaults to suport a wide range of use cases. The
primary constraints on parsing limits are available RAM and CPU. We recommend
tuning your JSON parsing limits down from the defaults to match your specific
application needs and available resourcess. Due to the way the parsing limits
interact, running with permissive defaults in a low-resource environment like
a lightweight container can increase the risk that a large, complex JSON
payload could exhaust the available resources.

- `max_json_depth` `(int: 500)` – Specifies the maximum nesting depth of a JSON
payload. Limiting object depth mitigates the risk of stack exhaustion from
deeply nested objects, which could lead to a Denial of Service (DoS).

- `max_json_string_value_length` `(int: 1048576)` – Defines the maximum allowed
length in bytes for a single string value within a JSON payload. Limiting
string length provides a critical defense against excessive memory allocation
attacks where a client might send a very large string to exhaust server memory.
Defaults to 1MB.

- `max_json_object_entry_count` `(int: 10000)` – Sets the maximum number of
key-value pairs allowed in a single JSON object. Limiting the entry count on
JSON objects helps mitigate hash-collision Denial of Service (HashDoS) attacks
and prevents general resource exhaustion from objects with an excessive number
of entries.

- `max_json_array_element_count` `(int: 10000)` – Determines the maximum number
of elements permitted in a single JSON array. Limiting the number of array
elements prevents a single request from causing excessive memory consumption
when processing large lists.

- `max_json_token` `(int: 500000)` – Sets the maximum total number of tokens
(e.g., keys, values, braces, brackets) permitted in a single JSON payload.
Setting a limit on tokens acts as an overall complexity limit to provide a
safeguard against attacks that use a huge number of small elements to exhaust
CPU and memory.

### `telemetry` parameters

- `unauthenticated_metrics_access` `(bool: false)` - If set to true, allows
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,42 @@ default value in the `"/sys/config/ui"` [API endpoint](/vault/api-docs/system/co
- `disable_replication_status_endpoints` `(bool: false)` - Disables replication
status endpoints for the configured listener when set to `true`.

The JSON parsing limits like `max_json_depth` and `max_json_token` have
intentionally permissive defaults to suport a wide range of use cases. The
primary constraints on parsing limits are available RAM and CPU. We recommend
tuning your JSON parsing limits down from the defaults to match your specific
application needs and available resourcess. Due to the way the parsing limits
interact, running with permissive defaults in a low-resource environment like
a lightweight container can increase the risk that a large, complex JSON
payload could exhaust the available resources.

- `max_json_depth` `(int: 500)` – Specifies the maximum nesting depth of a JSON
payload. Limiting object depth mitigates the risk of stack exhaustion from
deeply nested objects, which could lead to a Denial of Service (DoS).

- `max_json_string_value_length` `(int: 1048576)` – Defines the maximum allowed
length in bytes for a single string value within a JSON payload. Limiting
string length provides a critical defense against excessive memory allocation
attacks where a client might send a very large string to exhaust server memory.
Defaults to 1MB.

- `max_json_object_entry_count` `(int: 10000)` – Sets the maximum number of
key-value pairs allowed in a single JSON object. Limiting the entry count on
JSON objects helps mitigate hash-collision Denial of Service (HashDoS) attacks
and prevents general resource exhaustion from objects with an excessive number
of entries.

- `max_json_array_element_count` `(int: 10000)` – Determines the maximum number
of elements permitted in a single JSON array. Limiting the number of array
elements prevents a single request from causing excessive memory consumption
when processing large lists.

- `max_json_token` `(int: 500000)` – Sets the maximum total number of tokens
(e.g., keys, values, braces, brackets) permitted in a single JSON payload.
Setting a limit on tokens acts as an overall complexity limit to provide a
safeguard against attacks that use a huge number of small elements to exhaust
CPU and memory.

### `telemetry` parameters

- `unauthenticated_metrics_access` `(bool: false)` - If set to true, allows
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,42 @@ default value in the `"/sys/config/ui"` [API endpoint](/vault/api-docs/system/co
- `disable_replication_status_endpoints` `(bool: false)` - Disables replication
status endpoints for the configured listener when set to `true`.

The JSON parsing limits like `max_json_depth` and `max_json_token` have
intentionally permissive defaults to suport a wide range of use cases. The
primary constraints on parsing limits are available RAM and CPU. We recommend
tuning your JSON parsing limits down from the defaults to match your specific
application needs and available resourcess. Due to the way the parsing limits
interact, running with permissive defaults in a low-resource environment like
a lightweight container can increase the risk that a large, complex JSON
payload could exhaust the available resources.

- `max_json_depth` `(int: 500)` – Specifies the maximum nesting depth of a JSON
payload. Limiting object depth mitigates the risk of stack exhaustion from
deeply nested objects, which could lead to a Denial of Service (DoS).

- `max_json_string_value_length` `(int: 1048576)` – Defines the maximum allowed
length in bytes for a single string value within a JSON payload. Limiting
string length provides a critical defense against excessive memory allocation
attacks where a client might send a very large string to exhaust server memory.
Defaults to 1MB.

- `max_json_object_entry_count` `(int: 10000)` – Sets the maximum number of
key-value pairs allowed in a single JSON object. Limiting the entry count on
JSON objects helps mitigate hash-collision Denial of Service (HashDoS) attacks
and prevents general resource exhaustion from objects with an excessive number
of entries.

- `max_json_array_element_count` `(int: 10000)` – Determines the maximum number
of elements permitted in a single JSON array. Limiting the number of array
elements prevents a single request from causing excessive memory consumption
when processing large lists.

- `max_json_token` `(int: 500000)` – Sets the maximum total number of tokens
(e.g., keys, values, braces, brackets) permitted in a single JSON payload.
Setting a limit on tokens acts as an overall complexity limit to provide a
safeguard against attacks that use a huge number of small elements to exhaust
CPU and memory.

### `telemetry` parameters

- `unauthenticated_metrics_access` `(bool: false)` - If set to true, allows
Expand Down
Loading