Hello,
I am new at wikitech-l, so I dont know what is said before to the theme
"sinle-sign-on" (yes I know I could read the archive and I tried, but it is
too long for today :-)...) but here are some thoughts from me...
If I`ve got it, we have 3 main problems:
1. There could exists users on different lang-WPs with the same name.
2. There is no (good) way to find out automatically which accounds with the
same name in different lang-WPs belong to different persons and which
belong to the one person.
3. We have actually no good solution for the first problem but as long as we
wait the problem gets larger.
So we should think first about to solve the third problem. This should be very
easy since we just have to create a new account in a new database for each
account in the old databases. Each account gets a new ID, the old name, says
from which lang-WP it is and which ID belongs to it there (and all the other
stuff belonging to the account).
If someone creates a new account, he/she has to take a name which is not used
in the new DB. A new account creates a new entry in the new database without
pointing to an lang-WP and an ID.
The lang-WPs have to use the new user-DB (and before that should be translated
to this, meaning the IDs has to be changed in the right way).
If this is done, the old user-dbs can be thrown away. (But we still need the
rows with the pointers to the old lang-WPs and the corresponding ID in the
new database as I will explain below.)
Thus we have the following situation: we have one single new user-database,
where it is allowed just for old uses to have accounts with the same name
like other users (or have more as one account with the same name).
These users have one big problem, they have to use there new ID to log in, so
they have a reason to solve there name-conflicts as described below.
Now we have everything we wanted and just the small name-conflict-problem
described above.
In the second step we have time to solve the problem with the names.
We could send automatically E-Mails to all accounts which have no unique name
(if the adresses are known) telling them which (new) IDs belong to the old
accounts (by telling them from which lang-WP there are, we even could tell
them there old ID: Ahh, for this we still need the informations!) and invite
them to merge the accounts which belongs to them! (Of course this needs a
special formular, where you have to enter the new IDs, and the old (and new)
password for each ID. Merging accounts could be a new feature of course).
We even could give them (and all others) the possibility to change there name
(which also should be a new feature), but of course just to unique names
which does not exist. This feature is somehow special, since for several
reasons the old name should be save for a longer time, i.e. it should not be
allowed for other persons to choose it for this time (but this is another
topic).
Thus the new user-database can be cleaned up to a better level. If there would
be users which does not want to change there name to solve the name-conflict
with other persons they can mark there account(s) as "under conflict". This
may will be the hard problems later.
After a while each account, whichs is not marked as "under conflict", but has
a name-conflict with an other account is changed automatically to a new name
(gets a additional number in the end of it...).
This may solves some "under-conflict"-accounts since may all other accounts
with the same name are may changed, cause they was not marked as
"under-conflict".
What to do with the rest could be discussed later...
Regards
Ivo Köthnig