← Back to team overview

ubuntu-bengali-manual team mailing list archive

Re: [Bug 881019] Re: Lp login is broken after account merge

 

On Tue, May 29, 2012 at 2:50 AM, James E. Blair <corvus@xxxxxxx> wrote:
> Since we're presenting a unified system with Launchpad, Gerrit, and our
> other tools, a user's first interaction with Gerrit may well be over
> SSH.  This works because we are able to pre-populate Gerrit's database
> using the LP account -> OpenID mapping.  Having an API call to do that
> correctly would be very helpful and make this work for everyone.  Having
> a user log in to Gerrit just to "register" when everything should be
> automatic isn't a great UX.

You can take the userid in the ssh challenge and map via the existing
sshkeys API to determine their SSH key in realtime. Depending on the
SSH server you are using, this may be more or less easy though.

bzr+ssh://bazaar.launchpad.net does precisely this (though it uses a
predecessor of the current LP API which isn't externally exposed).

-Rob

-- 
You received this bug notification because you are a member of Ubuntu
Bengali Manual, which is subscribed to LoCo Team Portal.
https://bugs.launchpad.net/bugs/881019

Title:
  Lp login is broken after account merge

Status in Canonical SSO provider:
  Confirmed
Status in Launchpad itself:
  Triaged
Status in LoCo Team Portal:
  Confirmed
Status in OpenStack Core Infrastructure:
  Confirmed
Status in Summit - The UDS Scheduler:
  Confirmed

Bug description:
  This looks like  bug 644824 (reopned?), though may also be bug 676964.
  In either case, openid are not matched correctly when the user logins
  in through SSO. Since both of these bugs were reported, the
  openididentifier table was created to store multiple ids for a user.
  Merge may not be dealing with the table correctly.

  There have also been many cases where the email address table (used to
  lookup Persons) has a different account from the account in the person
  table. This should be an impossibility. Maybe there should be a
  constraint, or column should be dropped from person, (or less likely
  emailaddress).

  Notes from gmb, 2011-11-24:

   - Dropping account from Person is prohibitively complex (see comments).
   - Running the following query:
         SELECT COUNT(*) FROM Person, EmailAddress WHERE
             EmailAddress.person = Person.id AND
             EmailAddress.account <> Person.account;
     tells us that there are currently two Persons in the production DB whose Person.account
     and EmailAddress.account don't match.

  --

  From the original question:
  One of our guys just recently merged two launchpad acounts into the account nati-ueno. The merge didn't go all the way through - there are times when the old openid gets referenced.

   https://login.launchpad.net/+id/BBze6nw
   https://login.launchpad.net/+id/X6dGn6P

  X6dGn6P is the correct one.

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-identity-provider/+bug/881019/+subscriptions


References