How to send HTTP/SOAP request with a WS security header.

How to send HTTP/SOAP request with a WS security header.

book

Article ID: KB0094146

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition -
Not Applicable -

Description

Description:
How to send HTTP/SOAP request with a WS security header.

Issue/Introduction

How to send HTTP/SOAP request with a WS security header.

Resolution

For WS security, add an Oasis WS Security schema (https://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd) to the project. Create an XML reference element under the SOAP “header”( SOAP Event -> Payload -> Advanced -> message -> Envelope -> Header) namely “Security” and associate the WS Security schema to that.


The typical structure of a WS Security header is:

 

<Security>
       <UsernameToken>
                   <Username/>
                   <Password/>
       </UsernameToken>

</Security>


If you have the desired WSSE content, you can use the catalog function "SOAP.addHeaderPart" to add it to the SOAP event. For example:


>>>>>>>>>>>

String wsseContent = "<wsse:Security mustUnderstand=\"1\" xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\"><wsse:UsernameToken xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\"><wsse:Username xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\">userA</wsse:Username><wsse:Password Type=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText\" xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\">encryptedPassswordForUserA</wsse:Password></wsse:UsernameToken></wsse:Security>"

";


SOAP.addHeaderPart(soapeventout, wsseContent);

<<<<<<<<<<<