Configuring an HTTPS handler
How to configure an HTTPS handler to manage HTTPS requests to DataPower® services. When the handler supports the WebSocket protocol, the
handler accepts requests that use the https or wss protocol
identifier.
About this task
You can configure a handler to support the WebSocket or HTTP version 2 (HTTP/2)
protocol. A client cannot have both a WebSocket and an HTTP/2 session. WebSocket cannot use an
HTTP/2 session. The establishment of an HTTP/2 session disables the WebSocket upgrade.
- For a WebSocket upgrade, the request is to switch the existing connection to use the WebSocket
protocol. WebSocket upgrade requests require that the handler allows GET methods in requests. When
the handler switches to the WebSocket protocol, you can control the idle timeout. This timer
monitors the idle time in the data transfer process. When the specified idle time is exceeded, the
connection is torn down.Attention: Not all DataPower services support WebSocket upgrade. If you assign a handler that supports WebSocket upgrade to a DataPower service that does not, the DataPower service cannot start because of an invalid configuration.
- For HTTP/2, the handler must allow the HTTP/2 feature. When the handler uses the HTTP/2
protocol, you can control the following settings.
- The maximum number of outstanding concurrent streams.
- The maximum size in octets of frames.
- Whether to enable the inclusion of the HTTP/2 stream header in the request or response. When
enabled, the HTTP/2 stream identifier is included in the
x-dp-http2-streamheader. With this header, you can correlate the HTTP/2 stream. - The maximum idle duration in seconds to allow before the handler closes the HTTP/2 connection.
- The HTTP version to clients.
- The negotiation and reuse of persistent connections.
- Upgrade to WebSocket.
The TLS profile that secures the HTTP/2 connection must prevent renegotiation and must use the
TLS 1.2 or later protocol with a cipher that is secure according to RFC 7540. To prevent
client-initiated TLS renegotiation, define the configuration as follows on the
Advanced tab.
- Set the Set max number client-initiated renegotiation allow option of the Advanced TLS options property.
- Make sure that the value for the Max client-initiated renegotiations property is 0.
Alternatively, for only a TLS server profile, make sure that the Prohibit session resumption on renegotiation property is not enabled. This setting is the default setting.
For more information about the HTTP/2 protocol, see RFC 7540, RFC 7541, and RFC 8740.
Procedure
Click the Advanced tab to define or modify connection details.