|←Single login||Unified login|
|This is an archived proposal for the implementation of single user login. For more information, go see the single login documentation page.|
Here is a possible strategy for transitioning to single login without casuing too much chaos. By single login, I mean having the same account across all language wikipedias: meta, en, fr, etc.
This is the kind of thing which might be very easy to get wrong, so please attack my idea as hard as you can, find all the old holes, problems, etc.
- interwiki bots won't be anonymous anymore
- handling odd vandalism cases on some obscure wiki will be easier since you won't be anonymous
- encourage cross-wiki participation, because joining new wikipedias will be much easier because you don't have to create a new account
- no need to have different account names across different wikipedias in case yours is taken
We create a fresh secondary user database which is common to all wikipedias. Old users will have to recreate their accounts under the new database and do an extremely easy migration step. We'll keep the old login system forever (unless a wikipedia manages to migrate all its users), but if a user wants to edit wikipedia, he'll have to migrate his acocunt.
- Freeze new user account registrations (just for a few minutes)
- Create a common user database
- This will be shared by all wikipedias.
- This does not replace the old user database. The two will co-exist, however, only users in the new database may edit
- It will start out with no users, completely fresh!
- The first user ID = 1 + the largest user ID on the largest wikipedia (en)
- All new logins are created under the common account
- Add a checkbox to the login page "Common login (created after DATE)" so that people logging in can toggle whether they have a common account or an old account
- Create a migration page users can reattribute all their contributions from an old account to a common-login user.
- The migration page occurs immediately after you log in via the old system
- Once migrated, the old user is deleted
Details or Enhancements
Ugh... this could get ugly
|1 person, A accounts, 1 user name||duplicate user detection|
|1 person, A accounts, U user name||duplicate user detection|
problem: what if one of the accounts gets automigrated?
|P people, 1 user name||user name reservation|
User name reservations
To prevent user names from being squatted, we could impose a rule for people creating common logins that the account name must either be the same as your login, or one which is not already known. (We have to first collect all old login names and dump them into a list of known logins).
There is also the possibility that two users could have the same login name on different wikipedias. The simplest way to handle this is to automatically migrate the oldest user and leave a note to all the other guys explaining what happened (hoping it's actually the same person). If they are not the same person, the other guy will just have to pick a new name. We could also use some other criteria, for example, most recently active, or first come first serve. Each approach has some disadvantages, but seniority has the least potential for abuse.
To make the transition as simple as possible, we do not allow users to edit wikipedia under their old user IDs. When a user logs in under the old system, she is presented with a screen asking her to migrate her account. The migration screen should be as painless as possible. She just logs in under the old system, plugs in her common login/password and the migration is confirmed. Since she has both typed in her old password (in the old login screen) and her new password (in the migration screen), we have confirmation from both sides. (see #Screens and messages)
One more trick we can use to make this painless is to automatically migrate accounts where there is only one instance of the user name. For such accounts, we can check the common user database regardless of whether or not the user checks "Common login system".
To make things convenient, we can also automatically detect accounts which belong to the same user, for example, by checking the account name, email addresses and interwiki links. Then when the user creates a common login, he will be presented with a page listing all the accounts to migrate. In order to migrate these accounts, he will have to type each of their passwords in. (Dori's idea)
We might have to create a separate namespace for old accounts. For example, before the switch, we should move all User: links to something like UserOld:. When a user migrates his account, we can replace the text "UserOld:Foo" with "User:Bar".
- bot flags
Should most likely remain local to the individual wikipedias.
- See the talk page for a discussion on this.
- Sysops, bureaucrats,
- skin, etc. preferences -- as an option
Screens and messages
Your user name [Erumuda__________________]
[X] common login system (created after DATE)
Your password [__81659_______________]
Note: all new accounts get created under the common login system. After enough users have transitioned we can check the box by default
Post log-in screens
- after logging in on an auto-migrated account
Log in succesful. Your account has been automatically migrated to the common login system. Your password is unchanged.
Manual migration (old account)
- after logging in on your old account
Log in succesful. Your account has been disabled because wikipedia is transitioning to a common login system. If you already have a common login (created after DATE), you can migrate your account by typing its name and password below.
- Common login [_Erumuda_____________] password [81659______________]
- [x ] first time migration: confirm password [___81659___________]
Hint: there is already a common-login user with your user-name. This account uses the same password as on the Swedish wikipedia.
Manual migration (new account)
- for convenience only, after logging in on your common account
The following accounts appear to be yours. If you want to migrate them to your common account, please enter their passwords and hit the migrate button
The hard way
Note: before, I had a much more complicated solution which is now under Single_login/Hard_way. This is what you get for not thinking laterally enough.