OpenID Authentication Implemented

After spending about 2/3 days testing and trying to implement OpenID into DuoMesh, I have managed to integrate with the login mechanism.

Registering with DuoMesh only allows you to use 4-15 characters and only contains letters and numbers, this prevents people from registering with a domain style username (e.g. users cannot register say duomesh.com as a username), this is how OpenID works, using a URL as a username. This means that I can simply use one login box to log both users registered with DuoMesh and people using an OpenID to login.  As OpenID passwords are verified by the identity provider, the password box is automatically disabled when a user starts typing a URL in to the login box, clicking on the password input box will prompt the user that they have entered (or started to enter) an OpenID and that the password is not required by DuoMesh (but authenticated via their identity provider).

Users from DuoMesh and OpenID are automatically entered into the same ‘user’ table, when a user logs in with OpenID the system will check to see if they exist in the database, if not the system will automatically create a new user with their OpenID as the username. The only difference between a standard account and an OpenID account is that the user of an OpenID account cannot change their password.

To show that OpenID is accepted on DuoMesh I have placed a small OpenID icon in the username field which will allow users to  identify that they can use their OpenID identity. This will also be displayed on the registration form, that registration is not required.

Comments are closed.