intermittent IDP failure

Steven Carmody steven_carmody at brown.edu
Mon Jan 28 13:22:57 EST 2013


Hi,

We're currently running IDP 2.3.5. We have a pair of load-balanced IDPs 
behind an F5; we use terracotta 3.1.1.

We have a growing number of Shib-enabled SPs, and consequently we're 
seeing a growing amount of usage. This problem has been with us for 
perhaps 12+ months. It used to be reported infrequently; with the 
increased usage its now being reported somewhat regularly.

The typical situation has a user logged into 3+ Shib-enabled SPs, and 
switching between them.  At some point, the IDP presents the user with 
an error screen. We *think* the underlying error from the logs is:

No SAMLRequest or SAMLResponse query path parameter, invalid SAML 2 HTTP 
Redirect message

That message is pretty clear -- EXCEPT the user is accessing a 
production IDP, and typically is already logged into the SP.

This msg *may* be triggered more frequently if the user is accessing a 
load-balanced SP that hasn't done anything to ensure that the SAML 
session is shared across all of the machines in the cluster. Outsourced, 
cloud-based SPs that use their own SAML implementation seem particularly 
prone to triggering this problem. Recently, tho, a local load-balanced 
cluster using the Shib SP code that had done nothing to share the SAML 
session across the cluster was also seen to be triggering the problem.

We think what happens is the user logs into an SP; the next time they 
access that SP they actually get sent to a different machine in the 
cluster; that machine has NO SAML session, so it sends the user to the 
IDP. Under normal circumstances, SSO at the IDP would handle this. But, 
for unknown reasons, sometimes the user is presented with the error.

The logs don't contain the HTTP command that the SP actually sent to the 
IDP (I suppose we could sit apache in front of our IDPs, and use the 
apache logs to capture that info). But, I have no reason to believe that 
the SPs aren't sending the query parameter when they clearly send it 
most of the time.

There's strong local suspicion of terracotta as the source of the 
problem... a couple of people edited their desktop /etc/hosts file to 
point to just one of the IDPs (rather than the load balancer), and they 
ran all day without the problem.

Does anyone recognize any part of this description ? Any thoughts or 
suggestions about the cause, or about additional steps we could take to 
try to identify the problem ?

Thanks in advance!


More information about the users mailing list