Routing requests through an HTTP proxy server that has authentication enabled

You can send requests through an HTTP proxy server that requires authentication, by using the mqsisetdbparms command to specify credentials on the httpproxy:: resource name.

About this task

You can configure the following message flow nodes to route requests through an HTTP proxy server, by setting the HTTP(S) proxy location parameter:
  • HTTPAsyncRequest
  • HTTPRequest
  • RESTAsyncRequest
  • RESTRequest
  • SalesforceRequest
  • SOAPAsyncRequest
  • SOAPRequest

If the HTTP proxy server requires authentication, you can provide the user name and password by specifying the httpproxy:: resource name through the mqsisetdbparms command.

Note: A message flow can provide the proxy authentication user name and password through the ProxyConnectHeaders property in the local environment for HTTPS requests, or the Proxy-Authorization header for HTTP requests. If these are present in the flow, they take precedence over values set by the mqsisetdbparms command; this applies to the HTTP, REST, and SOAP nodes listed above, but not to the SalesforceRequest node.

Procedure

Follow these steps to enable a message flow node to route requests through an HTTP proxy server:

  1. Specify the URL of the proxy server in the HTTP(S) proxy location parameter of the node.
  2. If the HTTP proxy server requires authentication through a user name and password, use the mqsisetdbparms command to provide these credentials on the httpproxy:: resource name.

    You can set the resource name to apply to either an HTTP proxy with a specified host name, in the form httpproxy::proxy_hostname, or to any HTTP proxy, by specifying httpproxy::HTTPPROXY. If you set the resource name to apply to specific HTTP proxy server, the proxy_hostname must match the hostname of the configured proxy, without the port.

    For example, use the following command to associate a user name and password with a connection to a specified HTTP proxy server (in this example, myProxyHostname):
    mqsisetdbparms IBNODE -n httpproxy::myProxyHostname -u myUserID -p myPassword
    Alternatively, use the following command to specify the credentials to be used as a default, for connecting to any HTTP proxy server that does not have a matching host name:
    mqsisetdbparms IBNODE -n httpproxy::HTTPPROXY -u myProxyUsername -p myProxyPassword
  3. If you add or modify the credentials by using the mqsisetdbparms command, you must restart the integration server for the changes to take effect.

    For more information, see mqsisetdbparms command.