The driver uses HTTP CONNECT tunneling to send all database requests and responses through an HTTP/HTTPS proxy. After the proxy authorizes the CONNECT request, the driver and database communicate over a two way TCP stream, maintaining full request or response and streaming behavior.

Syntax

To enable proxy tunneling, use the following syntax:

jdbc:datadirect:postgresql://server_name:port_number;
ProxyHost=proxy_host;ProxyPassword=proxy_password;
ProxyPort=proxy_port;ProxyUser=proxy_user;
[property=value[;...]];

where:

server_name
is the IP address in IPv4 or IPv6 format, or the server name for your server.
port_number
is the TCP port of the primary database server that is listening for connections to the database.
proxy_host
is the proxy server to use for the first connection.
proxy_port
is the port number where the proxy server is listening for HTTP or HTTPS requests for the first connection.
proxy_user
is the user name needed to connect to a proxy server for the first connection.
proxy_password
is the password needed to connect to a proxy server for the first connection.
Example:
jdbc:datadirect:postgresql://server1:5432;ProxyHost=pserver;ProxyPassword=secret;
ProxyPort=808;ProxyUser=PUser;

Configuration

To enable JDBC request/response tunneling, do the following:
  1. Allow CONNECT to the required database destinations (<host>:<port>).
  2. Enable HTTP/1.1 CONNECT support on the proxy front end.
  3. Authenticate using the chosen method, if required.