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

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

> Ability to Toggle "mustUnderstand" flag in security header.
> -----------------------------------------------------------
>
>                 Key: RAMPART-261
>                 URL: https://issues.apache.org/jira/browse/RAMPART-261
>             Project: Rampart
>          Issue Type: New Feature
>          Components: rampart-core
>    Affects Versions: 1.4
>            Reporter: Earl D. Baugh Jr.
>            Assignee: Robert Lazarski
>            Priority: Minor
>             Fix For: 1.8.0
>
>
> In dealing with a major telcom, I discovered that it's not possible to turn 
> off the mustUnderstand security header attribute.
> This causes issues in that ALL of their web services run thru a "proxy" which 
> understands security, but their back end services do NOT.
> Because of this, all messages that are sent to them must either not have the 
> mustUnderstand attribute, or have it set to "0" or "false", or they simply 
> fail with security violations.   I've checked to see if actor/next would 
> solve the problem, but the only way to get calls to work is to allow for this 
> to be disabled.
> I've inquired to them about changing this behavior, and they have no plans 
> nor intentions (from what I've been able to ascertain) of changing their 
> architecture and moving to something that either strips off the security 
> headers or can properly handle this setting.   Additionally their responses 
> do not have a SOAP header.  That, thankfully I can currently handle with the 
> axis2 ability to set KEY_RAMPART_OUT_POLICY.   They apparently have numerous 
> clients who can handle this, but I was not able to get any info as to what 
> technology they're using.  (the previous version here at my employer had a 
> "very" customized / hacked set of axis1 code that added and monkeyed with 
> various attributes).  
> Since  RAMPART does not get the options from Axis2  to handle the setting of  
> ServiceClient options setProperty( WSDL2Constants.ATTRIBUTE_MUST_UNDERSTAND, 
> "0" ), and can't be configured with the existing flow to sign but not set 
> this value, I've been stuck.
> (signing causes a hard coded "true" to be set for this attribute)
> I would like to suggest / recommend adding some form of option to allow for 
> signing, but not require the mustUnderstand attribute to be set.
> I have made a change to my local code and have a solution that works.  
> In RampartMessageData.java, after line 358 :   if(this.sender && 
> this.policyData != null) {
> a check that would call : secHeader.setMustUnderstand(false)  
> when the option is set would solve this problem, and allow per call control 
> of this behavior.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org
For additional commands, e-mail: java-dev-h...@axis.apache.org

Reply via email to