Table of Contents

PHP RFC: Create a global login system for php.net

Introduction

Currently there are different login systems all over php.net:

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.1 Global login system
Real name Yes No
aaronjunker (aaronjunker)  
derick (derick)  
galvao (galvao)  
heiglandreas (heiglandreas)  
jbnahan (jbnahan)  
kalle (kalle)  
kguest (kguest)  
levim (levim)  
marandall (marandall)  
mauricio (mauricio)  
mbeccati (mbeccati)  
mcmic (mcmic)  
pierrick (pierrick)  
ramsey (ramsey)  
sergey (sergey)  
svpernova09 (svpernova09)  
theodorejb (theodorejb)  
timwolla (timwolla)  
Final result: 4 14
This poll has been closed.

1.2 Type of global login system

What type of login system do you want?

1.2 Type of global login system
Real name Use oAuth provider GitHub Use own system (hosted on php.net) Use both
aaronjunker (aaronjunker)   
derick (derick)   
galvao (galvao)   
heiglandreas (heiglandreas)   
jhdxr (jhdxr)   
kalle (kalle)   
kguest (kguest)   
levim (levim)   
mauricio (mauricio)   
mcmic (mcmic)   
pierrick (pierrick)   
ramsey (ramsey)   
sergey (sergey)   
svpernova09 (svpernova09)   
theodorejb (theodorejb)   
timwolla (timwolla)   
Final result: 1 14 1
This poll has been closed.

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.1 www.php.net use preferences
Real name Yes, only allow setting settings with account Yes, but still allow the old system with saving settings in cookies No
aaronjunker (aaronjunker)   
derick (derick)   
galvao (galvao)   
jhdxr (jhdxr)   
kalle (kalle)   
kguest (kguest)   
mauricio (mauricio)   
mcmic (mcmic)   
pierrick (pierrick)   
ramsey (ramsey)   
sergey (sergey)   
svpernova09 (svpernova09)   
Final result: 0 12 0
This poll has been closed.

2.2 www.php.net user contributed notes

Do you want the new login system to be integrated into www.php.net contributed notes?

2.2 www.php.net user contributed notes
Real name Yes, only allow setting notes with account Yes, but still allow the old system No
aaronjunker (aaronjunker)   
derick (derick)   
galvao (galvao)   
kalle (kalle)   
kguest (kguest)   
levim (levim)   
mauricio (mauricio)   
mcmic (mcmic)   
pierrick (pierrick)   
ramsey (ramsey)   
sergey (sergey)   
svpernova09 (svpernova09)   
Final result: 2 1 9
This poll has been closed.

3.1 bugs.php.net login

Do you want the new login system to be integrated into bugs.php.net?

3.1 bugs.php.net login
Real name Yes No
aaronjunker (aaronjunker)  
galvao (galvao)  
kalle (kalle)  
kguest (kguest)  
levim (levim)  
mauricio (mauricio)  
mcmic (mcmic)  
pierrick (pierrick)  
ramsey (ramsey)  
sergey (sergey)  
svpernova09 (svpernova09)  
Final result: 3 8
This poll has been closed.

4.1 edit.php.net login

Do you want the new login system to be integrated into edit.php.net?

4.1 edit.php.net login
Real name Yes Yes, but still allow anonymous login Keep old login system completely
aaronjunker (aaronjunker)   
galvao (galvao)   
kalle (kalle)   
kguest (kguest)   
levim (levim)   
mauricio (mauricio)   
mcmic (mcmic)   
pierrick (pierrick)   
ramsey (ramsey)   
sergey (sergey)   
svpernova09 (svpernova09)   
Final result: 1 2 8
This poll has been closed.

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?

5.1 pecl.php.net login and pear.php.net login
Real name Yes No
derick (derick)  
galvao (galvao)  
kalle (kalle)  
kguest (kguest)  
levim (levim)  
mauricio (mauricio)  
mcmic (mcmic)  
pierrick (pierrick)  
ramsey (ramsey)  
sergey (sergey)  
svpernova09 (svpernova09)  
Final result: 3 8
This poll has been closed.

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?

7.1 wiki.php.net
Real name Yes, fully migrate Yes, but still allow old login system No
aaronjunker (aaronjunker)   
derick (derick)   
galvao (galvao)   
kalle (kalle)   
kguest (kguest)   
levim (levim)   
mauricio (mauricio)   
mcmic (mcmic)   
pierrick (pierrick)   
ramsey (ramsey)   
sergey (sergey)   
svpernova09 (svpernova09)   
Final result: 4 0 8
This poll has been closed.

References

Make a GitHub oauth app: GitHub Docs

Discussion on mailing list: https://externals.io/message/117816