Hi Colm,

Thanks a lot for your answer:

Here is the header I received : 

<soap:Header> 
<wsse:Security soap:mustUnderstand="1"> 
<wsu:Timestamp wsu:Id="Timestamp-f390d953-b8c6-4163-b5b4-a98e30aab56c"> 
<wsu:Created>2011-07-22T14:26:05Z</wsu:Created> 
<wsu:Expires>2011-07-22T14:31:05Z</wsu:Expires> 
</wsu:Timestamp> 
<wsse:UsernameToken
wsu:Id="SecurityToken-9d28ee61-d01c-48c7-8e6e-8cd42bc8376e"> 
<wsse:Username>xxx</wsse:Username> 
<wsse:Password
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText";>xxx</wsse:Password>
 
<wsse:Nonce>8PfBYBg1vo84GAlUVshpSA==</wsse:Nonce> 
<wsu:Created>2011-07-22T14:26:05Z</wsu:Created> 
</wsse:UsernameToken> 
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#";> 
<SignedInfo> 
<ds:CanonicalizationMethod xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#hmac-sha1"/> 
<Reference URI="#Id-68a23867-f268-4e07-8df5-e5de2511ab11"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>8ldWcRrq+AinkfWayJEieHUTZ7E=</DigestValue> 
</Reference> 
<Reference URI="#Id-5b7ed34a-b987-4984-a231-82c19ce1f132"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>BPUCRJEi6qoe/3lS0qTG81VsYFc=</DigestValue> 
</Reference> 
<Reference URI="#Id-4e37fd76-bd14-4035-acdb-e38b98630761"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>RNJRrCK+5ewoyAN5onKm05siJ9o=</DigestValue> 
</Reference> 
<Reference URI="#Id-c248e36a-4e62-4ec2-971a-069b5eeb26a8"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>FMUsGZGuIKQDpi+WTngvhQml4qI=</DigestValue> 
</Reference> 
<Reference URI="#Timestamp-f390d953-b8c6-4163-b5b4-a98e30aab56c"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>PstX8mJwKMKhjyNojsHghW3myk4=</DigestValue> 
</Reference> 
<Reference URI="#Id-ebb3ef9a-9057-4ad8-b7ac-f790d2587b56"> 
<Transforms> 
<Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> 
</Transforms> 
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> 
<DigestValue>1ySbGzd5DD8gu340swQji66xGuc=</DigestValue> 
</Reference> 
</SignedInfo> 
<SignatureValue>PuY5HJCIC8ZoX+KtnJwqXdJIFMA=</SignatureValue> 
<KeyInfo> 
<wsse:SecurityTokenReference> 
<wsse:Reference URI="#SecurityToken-9d28ee61-d01c-48c7-8e6e-8cd42bc8376e"
ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken"/>
 
</wsse:SecurityTokenReference> 
</KeyInfo> 
</Signature> 
</wsse:Security> 
</soap:Header> 

And wss4j is trying to validate the Signature element.

But I would like to only take care of the UsernameToken element and skip the
Timestamp and Signature elements.

What I also don't understand is why wss4j take care of the Signature element
which is not in the wsse:Security element.

The actor attribute should be added by the client ? What is the goal of this
attribute.

Again, thanks a lot for your answer :)


Colm O hEigeartaigh-2 wrote:
> 
> Hi Nicolas,
> 
> What are the invalid security header elements that you want to avoid
> processing? If the service only cares about the UsernameToken, the
> correct thing to do is to add an "actor" attribute to a security
> header that is only meant to be processed by the service provider, and
> only put the UsernameToken in this security header.
> 
> You can disable processors by the QName of the element they are meant
> to process via WSSConfig:
> 
> https://svn.apache.org/repos/asf/webservices/wss4j/branches/1_5_x-fixes/src/org/apache/ws/security/WSSConfig.java
> 
> Colm.
> 
> On Fri, Jul 22, 2011 at 10:25 PM, Nicolas B <[email protected]> wrote:
>>
>> Dear all,
>>
>> I'm trying to understand the default map processors initialize in the
>> WSSConfig class of wss4j.
>>
>> As explained in this ticket
>> http://forum.springsource.org/showthread.php?112450-WSSecurityException-while-validating-WS-Security-headers
>> I'm trying to validate my incoming SOAP messages based on the
>> UernameToken.
>>
>> So I want to only take care of this header element ;) When one of my
>> client
>> attacks my web service he is sending the right UsernameToken but also
>> other
>> elements, and the WSSecurityEngine is trying to validate ALL the
>> elements.
>>
>> How can I configure wss4j to only validate my UsernameToken and ignore
>> others. Is this the good way ? Is it to my client to respect what the
>> server
>> is waiting ?
>>
>> Thanks a lot in advance, and thanks for wss4j ;)
>>
>> Best Regards,
>> --
>> View this message in context:
>> http://old.nabble.com/WSSConfig-processors-tp32118532p32118532.html
>> Sent from the WSS4J mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
> 
> 
> 
> -- 
> Colm O hEigeartaigh
> 
> http://coheigea.blogspot.com/
> Talend - http://www.talend.com
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/WSSConfig-processors-tp32118532p32132801.html
Sent from the WSS4J mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to