Topic by Lucy Liu
Hi,
We are working on integrating EBS with RightNow. From EBS workflow, an event driven subscription will invoke SOAP web service call to RightNow server upon the raise of EBS business event.
The EBS WSIF (web service infokation framework) generates SOAP payload based on RightNow's WSDL definition. In the generated security header, it contains element "Timestamp".
We got the following fault code from RightNow Server
<soapenv:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<faultcode>wsse:InvalidSecurityToken</faultcode>
<faultstring>Timestamp should not be in the message</faultstring>
<detail>
<wsse:ProblemSecurityHeader>wsse:Timestamp</wsse:ProblemSecurityHeader>
</detail>
</soapenv:Fault>
while invoking CWSS api with EBS generated SOAP payload that contains the "Timestamp" in the security header as below:
<env:Header>
<Security
xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
mustUnderstand="1">
<Timestamp
xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<Created xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-11-17T21:35:41.359Z</Created>
<Expires xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-11-17T21:36:41.359Z</Expires>
</Timestamp>
<UsernameToken xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<Username xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">johhnyboy</Username>
<Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"
xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">password</Password>
<Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary"
xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">ZiPMxxxxyZME1eVSIcO3kBg==</Nonce>
<Created xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-11-17T21:35:41.359Z</Created>
</UsernameToken>
</Security>
<ns7:ClientInfoHeader
xmlns:ns7="urn:messages.ws.rightnow.com/v1_2"
soapenv:mustUnderstand="0"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<ns7:AppID>Trigger Update</ns7:AppID>
</ns7:ClientInfoHeader>
</env:Header>
Based on the WSDL, the XSD used for the security section in policy actually has “Timestamp” element with schema type “TimestampType” defined, but we still got error complaining about "Timestamp should not be in the message".
Is there any setting or workaround we can use to avoid such error?
Really appreciate your help!
Lucy