Custom System Properties
This page describes all custom system properties for DirX Access that administrators can use to influence the behavior of the DXA server.
To apply each property, add it to the wrapper.conf file as follows:
wrapper.java.additional.x=-D{property_name}={property_value}
Migration Control
Explicit disablement of migration
Property: net.atos.dirx.access.migration.disabled
Options: true/false
Effect: Disables automatic migration even if the server determines it is required.
Example:
wrapper.java.additional.x=-Dnet.atos.dirx.access.migration.disabled=true
LDAP Support for Dual Deployments
Support the read only mode of application repository
Property: solutions.dirx.access.support.ldap.read.only
Options: true/false
Effect: Enables read-only LDAP usage as an application repository in dual LDAP setups.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.support.ldap.read.only=true
More on the topic of multiple application repositories can be found here: LDAP - Handling Read Only LDAP Scenarios
Maximum Failed Calls before Switching Servers
Property: solutions.dirx.access.max.ldap.faults
Options: Any integer (default is 3)
Effect: Defines the maximum number of consecutive failed LDAP calls before switching to a secondary server.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.max.ldap.faults=3
LDAP search related properties
LDAP Page Size for Searches
Property: solutions.dirx.access.ldap.page.size
Options: integer (2048 recommended for DirX) or a suitable limit based on directory settings
Effect: Configures the maximum number of entries per page in LDAP search results.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.ldap.page.size=2048
Maximum LDAP Search Results
Property: solutions.dirx.access.ldap.max.search.results
Options: Any integer, 0 for unlimited (default is 10 000)
Effect: Sets a limit for the maximum number of LDAP search results.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.ldap.max.search.results=10000
More on the topic of large search results can be found here: LDAP - Large Search Results Limitations
Timeout Settings for Remote HTTP/HTTPS Connections
Connection Timeout
Property: solutions.dirx.access.client.connect.timeout
Options: Time in milliseconds (e.g., 10000 for 10 seconds)
Effect: Sets the maximum time the DXA server waits to establish a connection to a remote service.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.client.connect.timeout=10000
Read Timeout
Property: solutions.dirx.access.client.read.timeout
Options: Time in milliseconds (e.g., 10000 for 10 seconds)
Effect: Specifies the maximum time the DXA server waits to read data from a remote service once connected.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.client.read.timeout=10000
Embedded Jetty HTTP Server Hardening
Maximum Request Header Size
Property: solutions.dirx.access.jetty.max.header.size
Options: Any integer in bytes (default is 16384)
Effect: Sets the maximum size of request headers accepted by the Jetty HTTP server. Requests with headers exceeding this limit will be rejected.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.max.header.size=16384
Accept Queue Size
Property: solutions.dirx.access.jetty.accept.queue.size
Options: Any integer (default is 512)
Effect: Defines the size of the accept queue for incoming connections. Connections exceeding this queue size will be refused until capacity is available.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.accept.queue.size=512
URI Compliance with RFC 3986
Property: solutions.dirx.access.jetty.enable.uri.compliance.rfc3986
Options: true/false
Effect: When enabled, Jetty parses and validates request URIs according to RFC 3986.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.enable.uri.compliance.rfc3986=true
Referrer-Policy Header
Property: solutions.dirx.access.jetty.referer.policy
Options: Any valid Referrer-Policy directive (e.g., strict-origin-when-cross-origin, no-referrer, same-origin)
Effect: Sets the value of the Referrer-Policy HTTP response header sent by Jetty, controlling how much referrer information is included with requests.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.referer.policy=strict-origin-when-cross-origin
Idle Timeout for HTTP/HTTPS Connections
Property: solutions.dirx.access.jetty.idle.timeout
Options: Time in milliseconds (e.g., 30000 for 30 seconds)
Effect: Specifies how long an HTTP/HTTPS connection may remain idle before Jetty closes it. Lowering this value helps free resources from stale connections.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.idle.timeout=30000
X-Content-Type-Options Header
Property: solutions.dirx.access.jetty.x.content.type.options.enabled
Options: true/false
Effect: When enabled, Jetty adds the X-Content-Type-Options: nosniff response header, preventing browsers from MIME-type sniffing. Disable only if explicitly not required.
Example:
wrapper.java.additional.x=-Dsolutions.dirx.access.jetty.x.content.type.options.enabled=true
Each property above should be adjusted and tested according to your server and deployment requirements.