Configuration Reference Home
OpenDJ - HTTP Connection Handler

HTTP Connection Handler

The HTTP Connection Handler is used to interact with clients using HTTP.

It provides full support for Rest2LDAP.

Parent Component

The HTTP Connection Handler component inherits from the Connection Handler

Relations From this Component

The following components have a direct AGGREGATION relation FROM HTTP Connection Handlers :

Properties

A description of each property follows.


Basic Properties: Advanced Properties:
↓ allowed-client ↓ accept-backlog
↓ authentication-required ↓ allow-tcp-reuse-address
↓ config-file ↓ buffer-size
↓ denied-client ↓ java-class
↓ enabled ↓ max-blocked-write-time-limit
↓ keep-stats ↓ max-request-size
↓ key-manager-provider ↓ num-request-handlers
↓ listen-address ↓ use-tcp-keep-alive
↓ listen-port ↓ use-tcp-no-delay
↓ max-concurrent-ops-per-connection
↓ ssl-cert-nickname
↓ ssl-cipher-suite
↓ ssl-client-auth-policy
↓ ssl-protocol
↓ trust-manager-provider
↓ use-ssl

Basic Properties

allowed-client

Description
Specifies a set of host names or address masks that determine the clients that are allowed to establish connections to this Connection Handler. Valid values include a host name, a fully qualified domain name, a domain name, an IP address, or a subnetwork with subnetwork mask.
Default Value
All clients with addresses that do not match an address on the deny list are allowed. If there is no deny list, then all clients are allowed.
Allowed Values
An IP address mask
Multi-valued
Yes
Required
No
Admin Action Required
None. Changes to this property take effect immediately and do not interfere with connections that may have already been established.
Advanced Property
No
Read-only
No

authentication-required

Description
Specifies whether only authenticated requests can be processed by the HTTP Connection Handler. If true, only authenticated requests will be processed by the HTTP Connection Handler. If false, both authenticated requests and unauthenticated requests will be processed. All requests are subject to ACI limitations and unauthenticated requests are subject to server limits like maximum number of entries returned. Note that setting ds-cfg-reject-unauthenticated-requests to true will override the current setting.
Default Value
true
Allowed Values
true
false
Multi-valued
No
Required
Yes
Admin Action Required
None
Advanced Property
No
Read-only
No

config-file

Description
Specifies the name of the configuration file for the HTTP Connection Handler.
Default Value
config/http-config.json
Allowed Values
A path to an existing file that is readable by the server.
Multi-valued
No
Required
Yes
Admin Action Required
None
Advanced Property
No
Read-only
No

denied-client

Description
Specifies a set of host names or address masks that determine the clients that are not allowed to establish connections to this Connection Handler. Valid values include a host name, a fully qualified domain name, a domain name, an IP address, or a subnetwork with subnetwork mask. If both allowed and denied client masks are defined and a client connection matches one or more masks in both lists, then the connection is denied. If only a denied list is specified, then any client not matching a mask in that list is allowed.
Default Value
If an allow list is specified, then only clients with addresses on the allow list are allowed. Otherwise, all clients are allowed.
Allowed Values
An IP address mask
Multi-valued
Yes
Required
No
Admin Action Required
None. Changes to this property take effect immediately and do not interfere with connections that may have already been established.
Advanced Property
No
Read-only
No

enabled

Description
Indicates whether the Connection Handler is enabled.
Default Value
None
Allowed Values
true
false
Multi-valued
No
Required
Yes
Admin Action Required
None
Advanced Property
No
Read-only
No

keep-stats

Description
Indicates whether the HTTP Connection Handler should keep statistics. If enabled, the HTTP Connection Handler maintains statistics about the number and types of operations requested over HTTP and the amount of data sent and received.
Default Value
true
Allowed Values
true
false
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
No
Read-only
No

key-manager-provider

Description
Specifies the name of the key manager that should be used with this HTTP Connection Handler .
Default Value
None
Allowed Values
The DN of any Key Manager Provider. The referenced key manager provider must be enabled when the HTTP Connection Handler is enabled and configured to use SSL.
Multi-valued
No
Required
No
Admin Action Required
None. Changes to this property take effect immediately, but only for subsequent attempts to access the key manager provider for associated client connections.
Advanced Property
No
Read-only
No

listen-address

Description
Specifies the address or set of addresses on which this HTTP Connection Handler should listen for connections from HTTP clients. Multiple addresses may be provided as separate values for this attribute. If no values are provided, then the HTTP Connection Handler listens on all interfaces.
Default Value
0.0.0.0
Allowed Values
An IP address
Multi-valued
Yes
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
No
Read-only
No

listen-port

Description
Specifies the port number on which the HTTP Connection Handler will listen for connections from clients. Only a single port number may be provided.
Default Value
None
Allowed Values
An integer value. Lower value is 1. Upper value is 65535 .
Multi-valued
No
Required
Yes
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
No
Read-only
No

max-concurrent-ops-per-connection

Description
Specifies the maximum number of internal operations that each HTTP client connection can execute concurrently. This property allow to limit the impact that each HTTP request can have on the whole server by limiting the number of internal operations that each HTTP request can execute concurrently. A value of 0 means that no limit is enforced.
Default Value
Let the server decide.
Allowed Values
An integer value. Lower value is 0.
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
No
Read-only
No

ssl-cert-nickname

Description
Specifies the nicknames (also called the aliases) of the certificates that the HTTP Connection Handler should use when performing SSL communication. The property can be used multiple times (referencing different nicknames) when an RSA, a DSA, and an ECC based server certificate is used in parallel. This is only applicable when the HTTP Connection Handler is configured to use SSL.
Default Value
Let the server decide.
Allowed Values
A String
Multi-valued
Yes
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
No
Read-only
No

ssl-cipher-suite

Description
Specifies the names of the SSL cipher suites that are allowed for use in SSL communication.
Default Value
Uses the default set of SSL cipher suites provided by the server's JVM.
Allowed Values
A String
Multi-valued
Yes
Required
No
Admin Action Required
None. Changes to this property take effect immediately but will only impact new SSL/TLS-based sessions created after the change.
Advanced Property
No
Read-only
No

ssl-client-auth-policy

Description
Specifies the policy that the HTTP Connection Handler should use regarding client SSL certificates. Clients can use the SASL EXTERNAL mechanism only if the policy is set to "optional" or "required". This is only applicable if clients are allowed to use SSL.
Default Value
optional
Allowed Values
disabled - Clients must not provide their own certificates when performing SSL negotiation.

optional - Clients are requested to provide their own certificates when performing SSL negotiation. The connection is nevertheless accepted if the client does not provide a certificate.

required - Clients are required to provide their own certificates when performing SSL negotiation and are refused access if they do not provide a certificate.


Multi-valued
No
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
No
Read-only
No

ssl-protocol

Description
Specifies the names of the SSL protocols that are allowed for use in SSL communication.
Default Value
Uses the default set of SSL protocols provided by the server's JVM.
Allowed Values
A String
Multi-valued
Yes
Required
No
Admin Action Required
None. Changes to this property take effect immediately but only impact new SSL/TLS-based sessions created after the change.
Advanced Property
No
Read-only
No

trust-manager-provider

Description
Specifies the name of the trust manager that should be used with the HTTP Connection Handler .
Default Value
None
Allowed Values
The DN of any Trust Manager Provider. The referenced trust manager provider must be enabled when the HTTP Connection Handler is enabled and configured to use SSL.
Multi-valued
No
Required
No
Admin Action Required
None. Changes to this property take effect immediately, but only for subsequent attempts to access the trust manager provider for associated client connections.
Advanced Property
No
Read-only
No

use-ssl

Description
Indicates whether the HTTP Connection Handler should use SSL. If enabled, the HTTP Connection Handler will use SSL to encrypt communication with the clients.
Default Value
false
Allowed Values
true
false
Multi-valued
No
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
No
Read-only
No


Advanced Properties

accept-backlog

Description
Specifies the maximum number of pending connection attempts that are allowed to queue up in the accept backlog before the server starts rejecting new connection attempts. This is primarily an issue for cases in which a large number of connections are established to the server in a very short period of time (for example, a benchmark utility that creates a large number of client threads that each have their own connection to the server) and the connection handler is unable to keep up with the rate at which the new connections are established.
Default Value
128
Allowed Values
An integer value. Lower value is 1.
Multi-valued
No
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
Yes
Read-only
No

allow-tcp-reuse-address

Description
Indicates whether the HTTP Connection Handler should reuse socket descriptors. If enabled, the SO_REUSEADDR socket option is used on the server listen socket to potentially allow the reuse of socket descriptors for clients in a TIME_WAIT state. This may help the server avoid temporarily running out of socket descriptors in cases in which a very large number of short-lived connections have been established from the same client system.
Default Value
true
Allowed Values
true
false
Multi-valued
No
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
Yes
Read-only
No

buffer-size

Description
Specifies the size in bytes of the HTTP response message write buffer. This property specifies write buffer size allocated by the server for each client connection and used to buffer HTTP response messages data when writing.
Default Value
4096 bytes
Allowed Values
A positive integer representing a size. Lower value is 1. Upper value is 2147483647 .
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
Yes
Read-only
No

java-class

Description
Specifies the fully-qualified name of the Java class that provides the HTTP Connection Handler implementation.
Default Value
org.opends.server.protocols.http.HTTPConnectionHandler
Allowed Values
A java class that implements or extends the class(es) :
org.opends.server.api.ConnectionHandler
Multi-valued
No
Required
Yes
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
Yes
Read-only
No

max-blocked-write-time-limit

Description
Specifies the maximum length of time that attempts to write data to HTTP clients should be allowed to block. If an attempt to write data to a client takes longer than this length of time, then the client connection is terminated.
Default Value
2 minutes
Allowed Values
A duration Syntax. Lower limit is 0 milliseconds.
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
Yes
Read-only
No

max-request-size

Description
Specifies the size in bytes of the largest HTTP request message that will be allowed by the HTTP Connection Handler. This can help prevent denial-of-service attacks by clients that indicate they send extremely large requests to the server causing it to attempt to allocate large amounts of memory.
Default Value
5 megabytes
Allowed Values
A positive integer representing a size. Upper value is 2147483647 .
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
Yes
Read-only
No

num-request-handlers

Description
Specifies the number of request handlers that are used to read requests from clients. The HTTP Connection Handler uses one thread to accept new connections from clients, but uses one or more additional threads to read requests from existing client connections. This ensures that new requests are read efficiently and that the connection handler itself does not become a bottleneck when the server is under heavy load from many clients at the same time.
Default Value
Let the server decide.
Allowed Values
An integer value. Lower value is 1.
Multi-valued
No
Required
No
Admin Action Required
The HTTP Connection Handler must be disabled and re-enabled for changes to this setting to take effect
Advanced Property
Yes
Read-only
No

use-tcp-keep-alive

Description
Indicates whether the HTTP Connection Handler should use TCP keep-alive. If enabled, the SO_KEEPALIVE socket option is used to indicate that TCP keepalive messages should periodically be sent to the client to verify that the associated connection is still valid. This may also help prevent cases in which intermediate network hardware could silently drop an otherwise idle client connection, provided that the keepalive interval configured in the underlying operating system is smaller than the timeout enforced by the network hardware.
Default Value
true
Allowed Values
true
false
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
Yes
Read-only
No

use-tcp-no-delay

Description
Indicates whether the HTTP Connection Handler should use TCP no-delay. If enabled, the TCP_NODELAY socket option is used to ensure that response messages to the client are sent immediately rather than potentially waiting to determine whether additional response messages can be sent in the same packet. In most cases, using the TCP_NODELAY socket option provides better performance and lower response times, but disabling it may help for some cases in which the server sends a large number of entries to a client in response to a search request.
Default Value
true
Allowed Values
true
false
Multi-valued
No
Required
No
Admin Action Required
None
Advanced Property
Yes
Read-only
No