Stupid CAS Saml11TicketValidator Parsing Issue

Brent Putman putmanb at georgetown.edu
Thu Nov 12 13:09:25 EST 2015


Sorry, this came in while I was typing the other response.


On 11/12/15 12:53 PM, Marvin Addison wrote:
>
> I'm aware of that variant, but SOAP envelope building happens way
> down in HTTPSOAP11Encoder using afaict global configuration.

Ah, I was wondering whether you were using the message encoder here...


> The main obstacle is that I don't have a very good understanding of
> OpenSAML configuration mechanics. I believe I could call
> XMLObjectProviderRegistrySupport#registerObjectProvider to do what I
> want, but seems like a global change when I just want a one-off.

Yes, you might be able to do something like that, but please,please
don't do that in the IdP.  :-)


> Is there any way to achieve that?
>


Yes, the HTTPSOAP11Encoder first attempts to locate an
already-constructed Envelope in the MessageContext like so:

    protected Envelope getSOAPEnvelope() {
        return getMessageContext().getSubcontext(SOAP11Context.class,
true).getEnvelope();
    }


So if you just populate an Envelope instance there in that subcontext
before calling the Encoder, that should work.  It will also re-use the
Body instance that is there in that Envelope.  So just doing that
should give you a localized solution for this.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://shibboleth.net/pipermail/dev/attachments/20151112/37d7dbd0/attachment-0001.html>


More information about the dev mailing list