You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.
Configure headers to store
HTTP headers that need to be stored in the Blueriq session can be configured by name in a comma separated list in the application.properties. In this example the headers with the names header1, header2, header3 and header4 and their values will be kept and stored in the Blueriq session.
blueriq.user.headers=header1,header2,header3,header4
Use header values in the profile
You can use AQ_GetHeaders to assign header values to attributes in the profile.
Configure headers to send to service calls of type AQ_RestServiceClient or AQ_SoapServiceClient
Assuming that the headers that you wish to send with a Soap or Rest request are stored in the session, it is possible to indicate headers that are passed to all service calls:
blueriq.connection.headers=header1,header3,header4
If the configured headers are available in the session, they will be sent with the HTTP request. If the configured headers are not available, the particular header will not be sent with the request and a warning that looks like this will be printed to the log:
The configured header header1 has not been put on the request because it is not available
If none of the blueriq.connection.headers
are found in the session, this will be logged as follows:
No headers found for connection
Configure headers to send to a specific service call of type AQ_RestServiceClient or AQ_SoapServiceClient
If multiple service calls are in use, it might be desirable to configure which headers to send per service call or connection. In this way, you can override the value of blueriq.connection.headers
.
Assuming that the headers that you wish to send with a Soap or Rest request are stored in the session, it is possible to indicate headers that are passed to a specific service call or connection. The property prefix matches the property prefix of your service name.
blueriq.connection.Example.http.url = http://example.com/rest/service blueriq.connection.Example.http.headers = header2,header3
blueriq.connection.SoapExample.soap.url = http://example.com/soap/service blueriq.connection.SoapExample.soap.headers = header1,header2,header4
If the configured headers are available in the session, they will be sent with the HTTP request. If the configured headers are not available, the particular header will not be sent with the request and a warning that looks like this will be printed to the log:
The configured header header1 has not been put on the request because it is not available
If none of the headers specific to a rest service call, soap service call or connection are found in the session, this will be logged as follows:
No headers found for connection Example
Configure headers to send from an expose function flow
It is also possible to receive headers from a calling application, save them and put them on an outgoing http request in an exposed function flow. To use this functionality you need to configure which headers should be saved, and which headers should be put on a request modeled in the function flow. If your exposed function flow calls a rest service called "MyRestService" that you want to put headers on, your configuration should look like this:
blueriq.user.headers=header1,header2,header3,header4 blueriq.connection.MyRestService.http.url=http://example.com/rest/service blueriq.connection.MyRestService.http.headers=header2,header3
If you would like to put header2 and header3 on requests to the MyRestService service, ánd you would like to put header1 and header4 on requests to all other services , your configuration should look like this:
blueriq.user.headers=header1,header2,header3,header4 blueriq.connection.headers=header1,header4 blueriq.connection.MyRestService.http.url=http://example.com/rest/service blueriq.connection.MyRestService.http.headers=header2,header3
Potential security risks
There is no way to let the Runtime distinguish between ordinary metadata and sensitive information. Please keep that in mind when you configure your headers. Headers that are stored in a Blueriq session are potentially accessible to business engineers and to external systems that communicate with Blueriq Runtime