[SSO] 500 from a fresh login
Steps to reproduce:
- Start with a new browser session. No cookies, etc.
- Visit workbench.qr1hi.
- Click "Log in."
- Go through Google's log in process.
After you finish that login process, you land on a Workbench page.
When you log in with Google, you get a 500 page. If you go back to workbench.qr1hi, you can click "Log in" again, and it works that time. It seems like there's something off about the case where the user is not already logged in with Google when they try to log in.
#5 Updated by Peter Amstutz about 6 years ago
Started GET "/" for 127.0.0.1 at 2014-11-17 14:27:34 -0500
Processing by AuthController#welcome as HTML
Rendered auth/welcome.html.erb within layouts/application (1.6ms)
Completed 500 Internal Server Error in 16ms
#6 Updated by Peter Amstutz about 6 years ago
This seems like it might be the root cause of the redirection issue:
#8 Updated by Peter Amstutz about 6 years ago
commit:cfd47c9a7abf514ce34fb6f762850bafdb33bace in the sso-provider repository fixes the actual 500 error.
However, there is still a problem with redirects, where Google's sign in page actually causes the browser to visit the callback more than once. The first callback removes the redirect from the session, but the user actually sees the result of the 2nd callback, which doesn't have the redirect any more and so they end up at a generic page, which was the one that was broken and fixed in the above commit.
On google's side, the problem of getting more than one callback may be fixed on OAuth2 login page, although the bug report in note #6 is for OAuth2 and not OpenId.
The missing redirect problem wouldn't be such a big deal except that the fallback "welcome" page consists of simply a hardcoded link to qr1hi. If we had #3312, this page could actually be useful.