Login with the email once associated to a merge account OOPS

Bug #580461 reported by Ayrton Santana
22
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Canonical SSO provider
Invalid
Undecided
Unassigned
Launchpad itself
Fix Released
High
Stuart Bishop

Bug Description

If you merge two accounts on Launchpad, the OpenID reference is maintained on the merged record. Which means that when the user logs on the SSO server using the email address associated with the merged account, Launchpad tries to log in using the now invalid account and OOPS like OOPS-1582A1292 or OOPS-1585G1420:
  AttributeError: 'NoneType' object has no attribute 'email'

There are multiple layers to fixing this problem.

1- First, the OpenIDCallbackView should check the validity of the account returned and offer an adequate error message to the user when the tied account is invalid.
2- We should allow linking multiple OpenID account to a Person. That way when we merge two persons, we can maintain the multiple accounts link. (So if <email address hidden> is merged into <email address hidden>, which still maintains two accounts on the the SSO server, login in using any of these accounts on SSO will end up in the correct person on Launchpad)
3- One could argue that the SSO should merge account at the same time than Launchpad, not sure about this one.
4- Use the returned email address from the SSO server to find the correct Person.

Revision history for this message
Ayrton Santana (ayrton) wrote :

If possible, delete my old account of Ubuntu One servers first because I have a new account now.
No problem if someone wants to see my old things with the password I made available publicly.
There is nothing secret that expose myself.

Ayrton Santana (ayrton)
Changed in canonical-identity-provider:
status: New → Confirmed
Changed in canonical-identity-provider:
status: Confirmed → New
Revision history for this message
Stuart Metcalfe (stuartmetcalfe) wrote :

This appears to be a problem on Launchpad's end. Moving to their project.

Changed in canonical-identity-provider:
status: New → Invalid
Revision history for this message
Henning Eggers (henninge) wrote :

Hi Stuart & Stuart,
can you please have a closer look at this and sort out whose problem this really is? There seems to be disagreement on the fact atm.

Cheers. ;)

Am 05.05.2010 05:16, schrieb Stuart Bishop:
> On Tue, May 4, 2010 at 10:40 PM, Henning Eggers
> <email address hidden> wrote:
>> Hi Stuart,
>> Ayrton (cc'ed) cannot log into Launchpad since last week. Here are the
>> details:
>> https://answers.launchpad.net/launchpad-foundations/+question/109576
>>
>> Curtis said you'd be the one to be able to fix that. Would be great if you
>> could look into it as soon as you can, so that Ayrton can use Launchpad
>> again.
>
> I think you want the other Stuart. We are getting told by the SSO that
> Ayrton logged in using his old account, which no longer exists on
> Launchpad and fails. Perhaps the SSO is caching something it
> shouldn't, or there is some state in his cookies that needs clearing?

Changed in canonical-identity-provider:
status: Invalid → New
affects: launchpad → launchpad-foundations
summary: - OpenID linking to an account that does not exist.
+ Login with the email once associated to a merge account OOPS
Changed in canonical-identity-provider:
status: New → Invalid
Revision history for this message
Francis J. Lacoste (flacoste) wrote :

I've updated the description to reflect the nature of the bug, and yes, this isn't a SSO bug.

description: updated
Revision history for this message
Curtis Hovey (sinzui) wrote :

Is this bug indirectly fixed if we run database/schema/pending/update-merged-person-accounts.sql? The code fix was released, but this script will fix any persons that were merged between the the time it was first run and the 10.05 release.

The script renames the merges person so that the Lp lookup by person fails, the email address is used as a fallback to get the correct person/account. Lp will then update it's information about the person and account.

description: updated
Revision history for this message
Stuart Bishop (stub) wrote : Re: [Bug 580461] Re: Login with the email once associated to a merge account OOPS

On Thu, Jun 3, 2010 at 11:38 PM, Curtis Hovey
<email address hidden> wrote:
> Is this bug indirectly fixed if we run database/schema/pending/update-
> merged-person-accounts.sql? The code fix was released, but this script
> will fix any persons that were merged between the the time it was first
> run and the 10.05 release.

I have run this script (again?) on production.

--
Stuart Bishop <email address hidden>
http://www.stuartbishop.net/

Gary Poster (gary)
Changed in launchpad-foundations:
status: New → Triaged
importance: Undecided → High
Gary Poster (gary)
tags: added: openid
Gary Poster (gary)
Changed in launchpad-foundations:
assignee: nobody → Stuart Bishop (stub)
Ursula Junque (ursinha)
tags: added: oops
description: updated
Revision history for this message
Ayrton Santana (ayrton) wrote :

This bug appears solved.
I logged in "Bugged account" and this is working now. I will try to delete this, since the situation was resolved.

Thanks for everyone, all you did a great job.

Revision history for this message
Gary Poster (gary) wrote :

We're glad that the situation was resolved for you, Ayrton!

The underlying problem is still there, so other people might encounter it. We'll leave the bug open while we address it.

Revision history for this message
Launchpad QA Bot (lpqabot) wrote : Bug fixed by a commit
Changed in launchpad-foundations:
milestone: none → 10.09
tags: added: qa-needstesting
Changed in launchpad-foundations:
status: Triaged → Fix Committed
Stuart Bishop (stub)
tags: added: qa-ok
removed: qa-needstesting
Curtis Hovey (sinzui)
Changed in launchpad-foundations:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.