IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > Bindings > Binding types > Web service bindings

SOAP header propagation

When handling SOAP messages, you might need to access information from certain SOAP headers in messages that are received, ensure that messages with SOAP headers are sent with specific values, or allow SOAP headers to pass across a module.

When you configure a web service binding in Integration Designer, you can indicate that you want SOAP headers to be propagated.

The form and presence of the propagated SOAP headers might be affected by policy sets configured on the import or export, as explained in Table 1.

To configure the propagation of SOAP headers for an import or export, you select (from the Properties view of Integration Designer) the Propagate Protocol Header tab and select the options you require.


WS-Addressing header

The WS-Addressing header can be propagated by the web service (JAX-WS) binding.

When you propagate the WS-Addressing header, be aware of the following information:


WS-Security header

The WS-Security header can be propagated by both the web service (JAX-WS) binding and the web service (JAX-RPC) binding.

The web services WS-Security specification describes enhancements to SOAP messaging to provide quality of protection through message integrity, message confidentiality, and single message authentication. These mechanisms can be used to accommodate a wide variety of security models and encryption technologies.

When you propagate the WS-Security header, be aware of the following information:

To propagate the WS-Security header, you must include the WS-Security schema with the application module. See Including the WS-Security schema in an application module for the procedure to include the schema.


How headers are propagated

The way that headers are propagated depends on the security policy setting on the import or export binding, as shown in the Table 1:

How security headers are passed
  Export binding with no security policy Export binding with security policy
Import binding with no security policy Security headers are passed as-is through the module. They are not decrypted.

The headers are sent outbound in the same form in which they were received.

The digital signature might become invalid.

Security headers are decrypted and passed through the module with signature verification and authentication.

The decrypted headers are sent outbound.

The digital signature might become invalid.

Import binding with security policy Security headers are passed as-is through the module. They are not decrypted.

The headers should not be propagated to the import. Otherwise, an error occurs because of duplication.

Security headers are decrypted and passed through the module with signature verification and authentication.

The headers should not be propagated to the import. Otherwise, an error occurs because of duplication.

Configure appropriate policy sets on the export and import bindings, because this isolates the service requester from changes to the configuration or QoS requirements of the service provider. Having standard SOAP headers visible in a module can then be used to influence the processing (for example, logging and tracing) in the module. Propagating SOAP headers across a module from a received message to a sent message does mean that the isolation benefits of the module are reduced.

Standard headers, such as WS-Security headers, should not be propagated on a request to an import or response to an export when the import or export has an associated policy set that would normally result in the generation of those headers. Otherwise, an error will occur because of a duplication of the headers. Instead, the headers should be explicitly removed or the import or export binding.should be configured to prevent propagation of protocol headers.


Access SOAP headers

When a message that contains SOAP headers is received from a web service import or export, the headers are placed in the headers section of the service message object (SMO). You can access the header information, as described in "Accessing SOAP header information in the SMO".


Including the WS-Security schema in an application module

The following procedure outlines the steps for including the schema in the application module:

Web service bindings


Related information:
Policy sets
Access SOAP header information in the SMO