Retrieve Attribute from HTTP Header

Contents

Overview

The Retrieve from HTTP Header attribute retrieval filter can be used to retrieve the value of an HTTP header and set it to a message attribute. For example, it is possible to retrieve an X.509 certificate from a "USER_CERT" HTTP header and set it to the authentication.cert message attribute. This certificate can then be used by the filter's successors. The following HTTP request shows an example of such a header:

    
  POST /services/getEmployee HTTP/1.1
  Host: localhost:8095
  Content-Length: 21
  SOAPAction: HelloService
  USER_CERT:  MIIEZDCCA0 ...9aKD1fEQgJ
			  

It is also possible to retrieve a value from a named query string parameter and set this to the specified message attribute. The following example shows a request URL that contains a query string:

  http://hostname.com/services/getEmployee?first=john&last=smith
			  

In the above example the query string is "first=john&last=smith". As is clear from the example, query strings consist of attribute name-value pairs. Each name-value pair is separated by the '&' character.

Configuration

The following fields are available on the Retrieve from HTTP Header filter configuration screen:

Name:
Enter a name for this filter here.

HTTP Header Name:
Enter the name of the HTTP header that will contain the value that we want to set to the message attribute.

Base64 Decode:
Check this box if the extracted value should be base64 decoded before it is set to the message attribute.

Use Query String Parameters:
Check this box if the Enterprise Gateway should attempt to extract the HTTP Header Name from the query string parameters instead of from the HTTP headers.

Attribute ID:
Finally, select the attribute that will be used to store the value extracted from the request.