Thank you Colm.
One additional issue. I need to add a namespace to the signature element. Only
way I can figure to do it is AFTER the signing:
builder.computeSignature(partsToSign, false, null);
SOAPElement sig = (SOAPElement) builder.getSignatureElement();
sig.addNamespaceDeclaration("wsc",
"http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512" );
WSSecurityEngine secEngine = new WSSecurityEngine();
WSHandlerResult result = secEngine.processSecurityHeader(unsignedDocument,
null, null, crypto);
Is this valid? It produces the required output but I don’t know what to look
for in the “result” to know if its valid or not.
Regards
Andrew Harris | Architecture & Design Manager
[email protected]<mailto:[email protected]> | +61 3 9566 7125 | +61 4
1859 9547
Level 1,6 Nexus Crt, Mulgrave Vic 3170
[Description: Description: Description: Description: Description:
email-logo]<http://www.adppayroll.com.au/>[Description: Description:
Description: Description: Description:
LinkedIn]<https://www.linkedin.com/company/adpaustralia?trk=biz-companies-cym>[Description:
Description: Description: Description: Description:
Twitter]<https://twitter.com/adp_anz>[Description: Description: Description:
Description: Description: YouTube]<https://www.youtube.com/user/ADPANZ>
From: Colm O hEigeartaigh [mailto:[email protected]]
Sent: Thursday, 13 July 2017 7:00 PM
To: [email protected]
Subject: Re: Order of elements in the Security Header when signing
You could look at this test (testSignedTimestamp)
https://github.com/apache/wss4j/blob/trunk/ws-security-dom/src/test/java/org/apache/wss4j/dom/message/SignatureTest.java#L628
It signs a Timestamp, and the Timestamp is placed above the Signature in the
message.
Colm.
On Thu, Jul 13, 2017 at 4:41 AM, Harris, Andrew
<[email protected]<mailto:[email protected]>> wrote:
I am using WSS4J to sign a SOAP message. I currently add a timestamp to the
WSSecHeader and add it as one of the Parts to sign and then sign the message.
When I sign the message the BST and Security Elements are prepended to the
WSSecHeader and therefore I end up with :
<wsse:BinarySecurityToken />
<ds:Signature />
<wsu:Timestamp />
But I am being told an error I am getting may be because it should be:
<wsu:Timestamp />
<wsse:BinarySecurityToken />
<ds:Signature />
I have traced the code to the line “sig.sign(signContext);” in the
computeSignature method in WSSecSignature. The sig object is an Apache
implementation (org.apache.jcp.xml.dsig.internal.dom.DOMXMLSignature) of
javax.xml.crypto.dsig. XMLSignature which appears to always insert the
signature as the first item in the Security element.
Any thoughts on how to get what I am after?
Regards
Andrew Harris | Architecture & Design Manager
[email protected]<mailto:[email protected]> | +61 3 9566
7125<tel:+61%203%209566%207125> | +61 4 1859 9547
Level 1,6 Nexus Crt, Mulgrave Vic 3170
[Description: Description: Description: Description: Description:
email-logo]<http://www.adppayroll.com.au/>[Description: Description:
Description: Description: Description:
LinkedIn]<https://www.linkedin.com/company/adpaustralia?trk=biz-companies-cym>[Description:
Description: Description: Description: Description:
Twitter]<https://twitter.com/adp_anz>[Description: Description: Description:
Description: Description: YouTube]<https://www.youtube.com/user/ADPANZ>
CAUTION - This message may contain privileged and confidential information
intended only for the use of the addressee named above. If you are not the
intended recipient of this message you are hereby notified that any use,
dissemination, distribution or reproduction of this message is prohibited. If
you have received this message in error please notify Automatic Data Processing
Limited immediately. Any views expressed in this message are those of the
individual sender and may not necessarily reflect the views of Automatic Data
Processing Limited. If this email contains marketing material and you do not
wish to receive any email marketing material from us in the future, please
forward this email to [email protected]<mailto:[email protected]>
--
Colm O hEigeartaigh
Talend Community Coder
http://coders.talend.com
CAUTION - This message may contain privileged and confidential information
intended only for the use of the addressee named above. If you are not the
intended recipient of this message you are hereby notified that any use,
dissemination, distribution or reproduction of this message is prohibited. If
you have received this message in error please notify Automatic Data Processing
Limited immediately. Any views expressed in this message are those of the
individual sender and may not necessarily reflect the views of Automatic Data
Processing Limited. If this email contains marketing material and you do not
wish to receive any email marketing material from us in the future, please
forward this email to [email protected]