Section – Request Body Streaming

In general, Airlock Gateway waits until it received a complete request body before processing it and then passing it on to the corresponding back-end host. In certain cases, it can be necessary to change this behavior, and pass on all incoming data right away. For instance, the protocol "RPC over HTTP" sends several large requests to open the channel between client and server, and only sends small chunks of data through these requests, which are expected to immediately arrive at their destination. Similarly, very large file uploads may require Request Body Streaming, since collecting all the data in Airlock before passing it on is not feasible for memory usage reasons.

Request Body Streaming reduces the affected transactions' security level considerably: Most of Airlock Gateway's safety measures rely on having the complete request available at the time of filtering. If that is not the case, those measures can not be applied. It is therefore crucial to only enable Request Body Streaming for exactly those requests where it is needed. This is done by defining regular expression patterns for the HTTP method, the Path and/or the Content Type.

  • Use request body streaming: Controls whether request body streaming is used or not. If set, only requests matching all three of the following regular expression patterns will be streamed. Empty fields have the same effect as the pattern ^.*$
  • HTTP method: Only requests whose HTTP method matches this regular expression pattern will be streamed.
  • Path: Only requests whose path matches this regular expression pattern will be streamed.
  • Content type: Only requests whose content type header matches this regular expression pattern will be streamed.