s:Envelope xmlns:s="http://www.w3.org/2001/12/soap-envelope"
xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/04/secext">
...
PaulK
GooReria
...
...
To generate this header using the SOAP::Lite module, use the following code:
use SOAP::Lite maptype => { };
my $wsse = "http://schemas.xmlsoap.org/ws/2002/04/secext";
my $securityHeader = SOAP::Header->name(Security => {
UsernameToken => {
Username => SOAP::Data->type('' => 'PaulK'),
Password => SOAP::Data->type('' => 'GooReria'),
}
})->uri($wsse)->prefix('');
my $result = SOAP::Lite
# include header as an additional parameter
->securedMethod(@parameters, $securityHeader);
...
A BinarySecurityToken element might be used instead of the UsernameToken element to allow binary or other non-XML formats to be included in the message:
A0CD...
In this example, ValueType identifies the type of the security token (X.509v3 certificate), and EncodingType describes the method used to encode the data: Base64 or hex.