Adding dynamic custom headers to server requests
IDE Services allows you to generate custom HTTP headers via an executable script, which can be used on end-user machines to enhance the security of server-client authorization between IDE Services Server, Toolbox App, and JetBrains IDEs.
The headers are added to all requests that the Toolbox App and IDEs send to the IDE Services Server, including plugin repository requests.
Configuring dynamic header generation involves the following steps.
Step 1. Create a custom script
You should create a custom script and make it available to the end users. The script output must comply with the following JSON specification:
Step 2. Set VM option
In IDE Services, add a VM option that will be distributed to the users' IDEs.
Navigate to
In the
Configure Virtual Machine Optionsdialog, add the following value:-Dtbe.custom.headers.enabled=trueClick Save.
Step 3. Configure Toolbox settings
In IDE Services, add a Toolbox setting that will be distributed to the users' Toolbox App.
On the Profiles page, click the name of the profile you want to edit.
In the Settings section, click
and select Toolbox settings.
In the Configure Toolbox Settings dialog, use the Dynamic headers settings dropdown list to select whether a developer can change this setting in the Toolbox App.
Specify the following values:
Generator path: the path to your script on the users' machines.
Unauthorized response header name: the header that the proxy returns with a
401response when it rejects the generated headers. On receiving this header, the Toolbox App re-runs the script instead of requiring the user to log in again.Unauthorized response header value: optional. If specified, the Toolbox App re-runs the script only when the header has this value.
Click Save.