Skip to Content.
Sympa Menu

mace-opensaml-users - Re: [OpenSAML] HttpPostEncoder and HttpPostDecoder

Subject: OpenSAML user discussion

List archive

Re: [OpenSAML] HttpPostEncoder and HttpPostDecoder


Chronological Thread 
  • From: rangeli nepal <>
  • To:
  • Subject: Re: [OpenSAML] HttpPostEncoder and HttpPostDecoder
  • Date: Mon, 17 May 2010 20:37:41 -0400
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=uZvHSNb99C5SPN0Ee6S67DQqm5c5nI1hZ6Wfh2aLgETcO/4WHrXgqt2vVPFqNUfsmd pL7BONarW6yZs1WFt1QioPO0ypCj4nZwxp9nsCXeYCMSQWcHyen6FuecTgjKEWZZjLNe /kIFOYSmiTtOePANBy580tTZ/FYfE9KpJYW6o=

I was under similar impression. But two things proved me wrong:
 
1. I could see the post data in firefox plugin.
2. If I take Inputstream of httpRequestservlet and convert to string I was able to get SAMLRequest-"....."


 
On Mon, May 17, 2010 at 6:13 PM, Brent Putman <> wrote:


On 5/17/10 5:43 PM, rangeli nepal wrote:
>  When Message is sent as httppost it does URL encoding. so if I do url
> decode  and then feed to base64 decoding It starts to work.
>


Based on the error msg from the decoder, the problem is that there is
literally no HTTP form parameter named either 'SAMLRequest' or
'SAMLResponse'.

The code that performs this check is pretty simple:

String encodedMessage = transport.getParameterValue("SAMLRequest");
if (DatatypeHelper.isEmpty(encodedMessage)) {
   encodedMessage = transport.getParameterValue("SAMLResponse");
}

if (DatatypeHelper.isEmpty(encodedMessage)) {
   log.error("Request did not contain either a SAMLRequest or "
           + "SAMLResponse paramter.  Invalid request for SAML 2 HTTP
              POST binding.");
   throw new MessageDecodingException("No SAML message present in
                    request");
}





So it sounds like something about the form as produced by the encoder
and posted to the decoder endpoint is screwed up.  What does the encoded
form look like?

This encoder/decoder code is known to work correctly, so something must
be off in the variable inputs that you are supplying on one side or the
other.






Archive powered by MHonArc 2.6.16.

Top of Page