axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jamie Lyon" ...@it-innovation.soton.ac.uk>
Subject RE: [Rampart/C] SAML Support?
Date Tue, 21 Aug 2007 10:58:04 GMT

Hi,

See my reply below.

> -----Original Message-----
> > I now still have the problem of actually setting the SAML token. All
the
> > functions to do so are in rampart_context.c/h, but how to I access
the
> > context to set the token? I can access it by getting it out of the
> > message context, but I'm unsure how to get the message context. I'm
not
> > sure if it's only created when you call, for example,
> > axis2_svc_client_send_receive, or whether you can somehow access it
> > beforehand.
> >
> > In your list of suggestions you mention passing the new
rampart_context
> > as a parameter to rampart through rampart_context? I'm not sure if
this
> > is a typo, as I can't see any function within rampart_context that
> > doesn't require an already existing rampart_context to modify?
> 
> Yes this is a typing error. It should be corrected as pass the
> rampart_cotext as a parameter named RAMPART_CONFIGURATION to rampart
> through  msg_ctx. Sorry for confusing you on this.
> 
> To pass the rampart_context through the msg_ctx you can do the
following.
> 
> 1.Get the svc from svc_ctx from svc_client.
> 2.Get the conf_ctx from svc_ctx.
> 3 Get the axis2_conf from conf_ctx.
> 4 Set the parameter in conf using the function.
>   axis2_conf_add_param

I've done this, and have now got the assertions being included in the
message, I have a few queries/problems however.

I've got the saml token stored as an axiom_node within rampart_context,
and I add it into the sec_node as a child within
rampart_saml_token_build (called by rampart_shb_build_message).
Unfortunately this means that when the sec_node is destroyed at the end
of a message send, the SAML token is destroyed too. So is there a way of
duplicating an axiom_node so that I can add a clone into the sec_node
instead.

If there's not a way of duplicating them, like there is with attributes
and namespaces, then I'll have to write a clone function myself. If I do
have to do this, are there any pointers you'd like to share?

Also, when creating the rampart_context, is there a way to tell it to
load default data from the policy.xml file? At present I'm just
hardcoding values for the default timeout, etc...

Once this is all working, I'll send the diffs, though I doubt the
current implementation is suitable for including into the axis source
tree.

Thanks,
Jamie

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


Mime
View raw message