PHP RFC: Create a global login system for php.net
- Version: 1.1
- Date: 2022-05-23
- Author: Aaron Junker, aaronjunker@php.net
- Status: Declined
- First Published at: http://wiki.php.net/rfc/global_login
- Possible developer: Aaron Junker, aaronjunker@php.net
- Discussion thread: https://externals.io/message/117816
Introduction
Currently there are different login systems all over php.net:
- wiki.php.net uses wiki intern login and login over VCS account
- pecl.php.net uses an own login system
- pear.php.net uses an own login system
- bugs.php.net uses own login system to report security bugs and login over VCS account
- Mailing lists are using own tracking system
- edit.php.net allows login over several platforms (also GitHub), VCS and anonymous login
- php.net user contribution notes uses no login
- php.net preferences use cookies to save preferences.
- GitHub php source code uses GitHub login
Currently there is a login system called VCS accounts which generate a @php.net mail, but you need to request it and the normal user is not able to get one, so it does not fit for a global login.
There are two proposed ideas in this direction: A New Proposal for a global php.net Login System Using OAuth 2 and PHP Authentication System.
Proposal
This RFC proposes different scenarios for creating a global php.net login experience.
A global login would allow a better moderation of users across all sites of php.net.
1.1 Global login system
Add a global system all over php.net that allows you to login with one account over all pages. This will add a login and register button to the general PHP design.
main.php.net will be restructured to be used by general users and not just VCS account users.
1.2 Type of global login system
There are 3 proposed cases of how people would be able to log in
Use only oAuth from GitHub
Use GitHub to log into php.net. GitHub is used for development of PHP and so on every developer of PHP has one.
Only use own system
Advantages: Full control over users and their data.
Disadvantages: Resources needed to create such a system, that we currently don't have.
Mixed login
Allow both of the two proposed ideas.
1.3 VCS accounts
You will be able to connect your existing VCS account to the new php.net account and use the same features as before. VCS account request will be connected to the php.net login.
GitHub accounts connected to VCS accounts will be ported over to the new account system (unless in 1.2 option 2 is selected).
2.1 my php.net user preferences
My php.net user preferences are currently saved in cookies. This would allow associating these settings with your php.net account.
2.2 www.php.net user contributed notes
Currently you can give more or less anonym contribution notes on docs pages (entering a mail adress is voluntary). A global login system would help reducing spam comments and directly adressing users that wiolate the rules.
3.1 bugs.php.net login
bugs.php.net is currently only used for reporting security bugs. A integration with the php.net login system would be questionable, but still possible.
If voted “yes” on this one bugs.php.net could allow login only from people with connected VCS account.
4.1 edit.php.net login
edit.php.net allows log in with different platforms as well as anonymous and VCS login. When voted “yes” this would only allow login with the new php.net account (and also anonymous login when voted “Yes, but still allow anonymous login”).
Against this change speaks that edit.php.net is currently not really usable as it still hasn't migrated to the new git repositories.
5.1 pecl.php.net and pear.php.net login
pecl.php.net and pear.php.net are using their own account systems. This would integrate both of these systems into the new php.net account system.
6.1 people.php.net
people.php.net will keep showing only people with a VCS account attached to their php.net accounts. Aditionally it will no longer show the karma from git.php.net and svn.php.net, but in which PHP repositorys on GitHub this user participated.
7.1 wiki.php.net
wiki.php.net runs on Dokuwiki, a software that can be extended by plugins. The idea here is to create an own plugin that redirects from and to the PHP account service.
main.php.net will provide a feature to transfer the rights you had with your old wiki account to your new php.net account.
Proposed Voting Choices
A 2/3 majority is needed for thir RFC to pass. Voting started 11. June 2022 and ends 25. June 2022
1.1 Global login system
Do you want a global login system on php.net?
If you vote “no” please vote on the other votings like the result would be “yes”, because when this vosting results in “no” all other votings in this RFC will be not of matter.
1.2 Type of global login system
What type of login system do you want?
1.3 VCS accounts
Nothing to vote on.
2.1 my www.php.net user preferences
Do you want the new login system to be integrated into my php.net user preferences?
2.2 www.php.net user contributed notes
Do you want the new login system to be integrated into www.php.net contributed notes?
3.1 bugs.php.net login
Do you want the new login system to be integrated into bugs.php.net?
4.1 edit.php.net login
Do you want the new login system to be integrated into edit.php.net?
5.1 pecl.php.net login and pear.php.net login
Do you want the new login system to be integrated into pecl.php.net and pear.php.net?
6.1 people.php.net
Nothing to vote on.
7.1 wiki.php.net
Do you want the new login system to be integrated into wiki.php.net?
References
Make a GitHub oauth app: GitHub Docs
Discussion on mailing list: https://externals.io/message/117816