Paul C. Williams

Interfacing Technology & Business
View Paul Williams's profile on LinkedIn
StackOverflow
 3.3k 

Wednesday, December 18, 2013

Why do websites still have local log-in systems?

I was shocked today when perusing the PC Pro website, that they still require you to create an account on their system to post a comment. To be fair, I'm not contesting the usefulness of having an authentication mechanism. It keeps us a little safer from anonymous diatribe and vitriol.

But why would PC Pro or any other website want to maintain a safe authentication scheme, manage user accounts and all that when the apparatus of Google, Yahoo, Facebook, Twitter and others can be used so effectively? They're easy, cheap, effective and secure enough for most general use applications on the net.

Sure, don't use this for bank or medical site access systems, but comment systems are so very trivial, why do I as a user want to manage 30 different comment logins?

Sold. How does it work?

So, now you want to implement this in your web app? It's not as hard as you think. First, let's look at a typical username/password based authentication mechanism:


In a typical process, the user makes a login request using the username/password parameters.  The user details are fetched from a database, and compared to the parameters, to make sure the user is allowed to access the site, and the result is shown to the user, either via an error page or access to the app. 

The change required to substitute a login processor is actually pretty straight forward, and doesn't really change the flow very much:



The even better news is that most login processors have open APIs (some of which I have links to at the top of the article), which make this process even more fluid! All the application has to do is to correlate the User ID parameter from the login processor to the user permissions settings in the application. A shrewd architect can automatically procure and populate accounts that are not yet associated with associated with any user account, or associate many processors to a single account.

Image courtesy of Sira Anamwong at FreeDigitalPhotos.net

No comments:

Post a Comment