But what is Open ID? Well it is a shared identity service that allows internet users to login in to many different websites using only one online identity. Meaning you have to remeber fewer online identities.
PHP Rocks now supports Open IDs this means that you can login using a Open ID from a provider like AOL, which will then allow you to authenticate yourself with their username and password.
But it also goes beyond that as we have also used Open ID so that if a user logs in with a login that isn't recognised it will use the information provided by thier Open ID provider to auto-populate some of the registration forms for them.
In order to consume users Open ID's we decided to use The PHP OpenID Library, this along with the online tutorials made consuming Open ID identities really simple and we would recommend it to anyone who wants to Open ID enable their site. Its simpler than you would think!
However we didn't finish there we were so impressed by Open ID that we decided we wanted to become a Open ID provider ourselves!
So from now on anyone who registers or who has registered with us in the past now has a ready to go Open ID. Your Open ID can be found by logging in to PHP Rocks and clicking on My Profile at the top of the page, then click on the "Your Open ID" tab.
The URL you see can be pasted into any Open ID login box, allowing the site to communicate with us in order to authenticate you. In order to do this we will ask for your username and password on PHP Rocks in order to authenticate you.
We decided when we where implementing this that it was best to use http://siege.org/projects/phpMyID/, we made a few minor modifications to it so that it had multiuser support and no longer requires external configuration.
Then we used apaches mod_rewrite to rewrite the URL so that all the different permutations of http://www.php-rocks.com/id/username point to the same URL, with a different querystring parameter, this page then adds a resource link in the header of the page so that Open ID consumers can find the Open ID end point.
And that in a nutshell is how we implemented Open ID.
If you have any problems or suggestions in using this new feature then please don't hesitate to contact us!