[ 
https://issues.apache.org/jira/browse/RAMPART-411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Lazarski resolved RAMPART-411.
-------------------------------------
    Resolution: Fixed

Resolved in 2.0.0.

  The original failure was with the legacy WSS4J parameter-based 
"signatureParts"
  configuration, which referenced the BinarySecurityToken by QName and could not
  resolve it at signing time ("Element to encrypt/sign not found:
  ...BinarySecurityToken"). The example configuration also used the wrong 
namespace for
  the BinarySecurityToken (the WS-Security utility namespace instead of the 
WS-Security
  secext namespace where wsse:BinarySecurityToken is defined).

  In 2.0.0, signing the BinarySecurityToken is done through WS-SecurityPolicy: 
adding
  <sp:ProtectTokens/> to the binding enables token protection, and Rampart's 
binding
  builders add the BinarySecurityToken to the signature by its wsu:Id rather 
than by
  QName, so it is signed reliably. The parameter-based signatureParts signing 
path that
  produced the original error is no longer used.

  Added a regression test 
(AsymmetricBindingBuilderTest.testAsymmBindingProtectTokens
  with rampart-asymm-binding-protecttokens.xml): a message built under a 
ProtectTokens
  policy contains a signed BinarySecurityToken and Signature; if BST signing 
were
  broken the build would fail with the original "Element to encrypt/sign not 
found"
  error. Verified with a full clean 'mvn verify -Papache-release' across all 
modules
  including the nine policy samples on OpenJDK 17/21/25.



> Unable to sign the BinarySecurityToken using Rampart 1.6.2
> ----------------------------------------------------------
>
>                 Key: RAMPART-411
>                 URL: https://issues.apache.org/jira/browse/RAMPART-411
>             Project: Rampart
>          Issue Type: Bug
>          Components: rampart-policy
>    Affects Versions: 1.6.2
>         Environment: Axis2 1.6.2 , Java 7 and Rampart 1.6.2
>            Reporter: Ashok T
>            Assignee: Robert Lazarski
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> While try to enable the binarysecuritytoken in the signatureparts in the 
> axis2.xml am getting this error . This is happpened only when adding BST 
> element
> axis2.xml
> ----------
>  <action>
>         <items>Timestamp Signature</items>
>         <user>Test User</user>
>       <passwordCallbackClass>com.PWCBHandler</passwordCallbackClass>
>         <signaturePropFile>client.properties</signaturePropFile> 
>         
> <signatureParts>{Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp;
>         {Element}{http://schemas.xmlsoap.org/soap/envelope/} Body; 
>         
> {Element}{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}
>  BinarySecurityToken
>         </signatureParts>
>         <signatureKeyIdentifier>DirectReference</signatureKeyIdentifier> 
>       </action
> org.apache.ws.security.WSSecurityException: General security error 
> (WSEncryptBody/WSSignEnvelope: Element to encrypt/sign not found: 
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd,
>  BinarySecurityToken)
>       at 
> org.apache.ws.security.message.WSSecSignatureBase.addReferencesToSign(WSSecSignatureBase.java:160)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to