How To
ForgeRock Identity Cloud
ForgeRock Identity Platform

How do I configure proxy settings in IG (All versions)?

Last updated Feb 28, 2023

The purpose of this article is to provide information on configuring proxy settings in IG if requests need to go via a proxy server.


1 reader recommends this article

Overview

If your requests go through a proxy server, you can configure proxy settings in IG at a global level or within a route depending on your requirements:

This option is best if all your requests go via a proxy. Defining proxy settings at a global level overrides the default setting (which is no proxy defined - type NoProxyOptions) and means the new proxy settings will be used by every ClientHandler, ReverseProxyHandler and AmService by default.

This option is best if you only have specific routes that need to go via a proxy. You can define proxy settings within a route for the ClientHandler, ReverseProxyHandler and AmService using the proxyOptions option.

See ProxyOptions Usage for further information.

Configuring global proxy settings

You can configure global proxy settings in the heap of config.json (located in the $HOME/.openig/config directory). For example:"heap": [  {     "name": "ProxyOptions",     "type": "CustomProxyOptions",     "config": {       "uri": "http://proxy.example.com:8080"     }   },You must restart IG to apply these changes.

Note

If you do not have a config.json file in $HOME/.openig/config, you should create one. You can use the examples provided in the documentation to get you started: Example configuration files.

Configuring proxy options in a route

You can configure proxy settings for a ClientHandler or ReverseProxyHandler within a route using the proxyOptions option. For example:{  "name": "route name",   "type": "handler type",   "config": {      "proxyOptions": {        "type": "CustomProxyOptions",        "config": {           "uri": "http://proxy.example.com:8080",           "username": "proxyuser",           "passwordSecretId": "myproxy.secret.id",           "secretsProvider": "SystemAndEnvSecretStore"        }     }   } }

Where handler type is "ClientHandler" or “ReverseProxyHandler”.

You can configure proxy settings for Websocket notifications in AmService in a similar way using the proxyOptions option under the notifications option. For example:"type": "AmService",   "config": {      "..."      "notifications": {        "proxyOptions": {          "type": "CustomProxyOptions",          "config": {            "uri": "http://proxy.example.com:8080",            "username": "proxyuser",            "passwordSecretId": "myproxy.secret.id",            "secretsProvider": "SystemAndEnvSecretStore"          }       }     }   } }

See Also

ProxyOptions


Copyright and Trademarks Copyright © 2023 ForgeRock, all rights reserved.