Maybe it's not a bug but a feature request :-).

I see two issues:

1) WS-Security automatically adds undesirable WS-Addressing elements (IMO,
this should only happen when enableAddressing is specified). I don't see
anything in the WS-Security spec that indicates WS-Addressing is required. I
don't see a way to turn this behavior off in Synapse, without resorting to a
workaround such as I demonstrated (i.e., chaining together 2 sequences,
within one removing the undesirable WS-Addressing elements).

2) I didn't see a a way to add the ReplyTo WS-Addressing element (and it's
child node Address) using the header mechanism (or property, for that
matter). This was the crux of my issue, as, for some reason, Amazon expected
a ReplyTo. I suspect this is probably easily possible, but just wasn't able
to figure it out.

Btw, I was able to successfully interact with Amazon's SimpleDB now! I hope
to writeup a blog entry on my findings (I am actually also writing the book
called Open Source SOA from Manning, and I am including a big chapter on
Synapse, which I am a huge fan of).

To be honest, a lot of this WS-Security stuff is rather new to me, so I'm
feverishly trying to get a handle on it (the Manning book SOA Security has
been a big help). I have used PasswordDigest mechanism a lot, but not that
signing with x509 certs as much.

jeff

On Sat, Jun 7, 2008 at 8:42 PM, Ruwan Linton <[EMAIL PROTECTED]> wrote:

> Hi Jeff,
>
> What is the bug from your POV? I am sorry, I don't see a bug here.....
>
> Well you could go ahead and file a JIRA so that we can evaluate what is the
> issue that you have faced and see whether is there something wrong with
> Synapse, but I assume this is rather a configuration error.
>
> Thanks,
> Ruwan
>
>
> On Sun, Jun 8, 2008 at 7:45 AM, Jeff Davis <[EMAIL PROTECTED]> wrote:
>
> > As a follow-up, I was running it through tcpmon, which is why it had the
> > strange address.
> >
> > Yes, I am running the latest 1.2 build from the URL provided me last
> > Thursday, I believe.
> >
> > Should I submit this is a bug?
> >
> > On Sat, Jun 7, 2008 at 8:11 PM, Ruwan Linton <[EMAIL PROTECTED]>
> > wrote:
> >
> > > Hi Jeff,
> > >
> > > If you enable addressing to the outbound message then synapse should be
> > > sending the ReplyTo header as appropriate. May be amazon is not
> accepting
> > > anonymous ReplyTo headers, so assuming that you are using the 1.2 build
> > > here
> > > is the proposed solution to this;
> > >
> > > <definitions xmlns="http://ws.apache.org/ns/synapse";>
> > >   <localEntry key="sec_policy"
> > > src="file:repository/conf/sample/resources/policy/amazon.xml"/>
> > >
> > >   <in>
> > >        <send>
> > >           <endpoint name="secure">
> > >               <address uri="http://localhost:8086";>
> > >                   <enableSec policy="sec_policy"/>
> > >                    <enableAddressing separateListener="true"/>
> > >                </address>
> > >           </endpoint>
> > >       </send>
> > >   </in>
> > >   <out>
> > >        <header name="wsse:Security" action="remove" xmlns:wsse="
> > > http://www.w3.org/2005/08/addressing"/>
> > >        <send/>
> > >   </out>
> > > </definitions>
> > >
> > > The above configuration should work, but please note that you need to
> > > change
> > > the address uri of the endpoint in the above configuration from "
> > > http://localhost:8086"; to "AMAZON_URL"
> > >
> > > If this is not working could you please attach the TCPMon out put of
> the
> > > outbound message which is going to AMAZON (after changing important
> > > information) and the message received from AMAZON. If you don't want to
> > > post
> > > it publicly you may send it to me (mailto:[EMAIL PROTECTED] <
> [EMAIL PROTECTED]
> > >)
> > >
> > > Thanks,
> > > Ruwan
> > >
> > > On Sun, Jun 8, 2008 at 7:01 AM, Jeff Davis <[EMAIL PROTECTED]> wrote:
> > >
> > > > I did a little research, and I haven't seen anything in the standard
> > that
> > > > indicates WS-Security requires WS-Addressing.  Unfortunately, it
> > doesn't
> > > > appear as though setting the header has any impact (further, if it
> did,
> > > the
> > > > ReplyTo has a child element for the Address, so not sure how that
> would
> > > be
> > > > added). Here's my configuration:
> > > >
> > > > <definitions xmlns="http://ws.apache.org/ns/synapse";>
> > > >    <localEntry key="sec_policy"
> > > > src="file:repository/conf/sample/resources/policy/amazon.xml"/>
> > > >
> > > >    <in>
> > > >        <header name="ReplyTo" action="set" value=""/>
> > > >        <send>
> > > >            <endpoint name="secure">
> > > >                <address uri="http://localhost:8086";>
> > > >                    <enableSec policy="sec_policy"/>
> > > >                    <enableAddressing/>
> > > >                </address>
> > > >            </endpoint>
> > > >        </send>
> > > >    </in>
> > > >    <out>
> > > >        <send/>
> > > >    </out>
> > > > </definitions>
> > > >
> > > > In lieu of the above header, I also tried:
> > > >
> > > > <header name="wsse:Security" action="remove"
> > > >       xmlns:wsse="http://www.w3.org/2005/08/addressing"/>
> > > >
> > > > (I also tried removing the <enableAddressing/> node for each test).
> > > >
> > > > To recap my issue, it seems as though Amazon AWS (at least for
> SimpleDB
> > > > service) requires the ReplyTo WS-Addressing element, if WS-Addressing
> > is
> > > > used. I haven't found a way to remove WS-Addressing generated
> > > automatically
> > > > by Synapse when WS-Security is used, and I haven't figure out how to
> > add
> > > > ReplyTo (and it's child Address node) to the outbound message.
> > > >
> > > > Anyone have any work-arounds? Maybe I'll try chaining together some
> > > things
> > > > to see if I can devise something.
> > > >
> > > > Thanks,
> > > >
> > > > jeff
> > > >
> > > >
> > > > On Sat, Jun 7, 2008 at 9:25 AM, Asankha C. Perera <[EMAIL PROTECTED]>
> > > > wrote:
> > > >
> > > > > Hi Jeff
> > > > >
> > > > >> To be honest, I'm not entirely certain how to add it in the Header
> > > > >> mediator,
> > > > >> as you allude to. I did try various permutations of using the
> > property
> > > > and
> > > > >> header nodes within the <in>, but nothing ever appeared.
> > > > >>
> > > > >>
> > > > > I am sorry.. I had made a mistake in my reply earlier.. to set the
> > > > ReplyTo
> > > > > header to something, you will use "<header name="ReplyTo"
> > value="..."/>
> > > > > format.. If you are familiar with using TCPMon, you can place it
> > > between
> > > > > your service and Amazon and route the message through it to get a
> > trace
> > > > of
> > > > > the messages. This will help you and us to solve any problems.
> > > > >
> > > > >> Obviously, Amazon's service is not entirely compliant with the
> > > > WS-Security
> > > > >> standards. Even in their section under WS-Security SOAP, they
> state
> > > that
> > > > >> "if
> > > > >> you're using WS-Addressing, we recommend you also sign the Action
> > and
> > > To
> > > > >> header elements" (I haven't figured out how to do that yet, but
> I'll
> > > dig
> > > > >> into that).
> > > > >>
> > > > >>
> > > > > If you are ok to share your configuration/scenario with us or let
> us
> > > try
> > > > > some simple sample to reproduce the issue you are facing, one of
> the
> > > > > developers would be able to tell you exactly whats wrong, and what
> > you
> > > > could
> > > > > do to get past the problem
> > > > >
> > > > > asankha
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Ruwan Linton
> > > http://www.wso2.org - "Oxygenating the Web Services Platform"
> > >
> >
>
>
>
> --
> Ruwan Linton
> http://www.wso2.org - "Oxygenating the Web Services Platform"
>

Reply via email to