martes, 1 de mayo de 2012

Login en PHP

Login en php - Características deseables:

Ayer hablando con un amigo le pregunté sobre ¿¿QUE PUEDO ESCRIBIR??, este buen amigo mio me dijo "...toba, colgate un buen sistema de logueo...", pero como no tengo ninguno a mano que esté 100% funcional se me ocurrió enumerar algunas características "deseables" en todo sistema de login que se merezca mis respetos (en si, que es lo que yo desearía para un sistema completo de registro de usuarios).

En primer lugar lo mas deseable por un diseñador no es lo mas deseable por un programador, por ejemplo un programador ni se fija si el formulario queda lindo o feo... o si queda bien encuadrado en su lugar o si utilizar un checkbox o un select, sino que se fija en determinadas características que todo sistema de login debe tener (al menos bajo mi punto de vista).

Es bajo el enfoque de un programador que voy a realizar este post tratando de enumerar características deseables de un sistema de logueo.

1.- Ingreso mediante correo electrónico o usuarios segun el usuario quiera loguearse con su correo o con su nombre de usuario.


2.- encriptado de claves seguro (si es doble encriptado y utilizando semillas es mucho mejor).


3.- Activación de cuentas por email y/o número ID.

4.- Recuperación de contraseña facilmente mediante el ingreso de usuario y/o correo electrónico y que envíe un correo electrónico de reactivación previo cambiar la clave por una clave aleatoria y asignar un código de activación/reactivación


5.- La conexión a la base de datos debe realizarse mediante una clase abstracta ya que nunca se sabe cuando será necesario cambiar nuestro servidor de bases de datos).
(gracias GRAN "J")


6.- Los datos que vienen por el formulario (vía POST o GET) deben ser correctamente filtrados para proteger de inyecciones de código sql etc.


7.- Debe contar con una buena comprobación pero sin exederse para no ralentizar el proceso de registro.


8.- Si el sistema contendrá un perfil de usuarios, el registro debe ser lo mas simple posible para que luego sea el propio usuario quien actualice sus datos y no cometer el error de obtener todos los datos posible desde el registro ya que eso tiene desventajas y la principal es el tiempo que tardan en ser registrados los datos del usuario(esto por el proceso de filtrado y comprobaciones etc etc).


9.- También debe contar con un buen sistema de envío de email ya que no todos los hostings aceptan o mejor dicho no todos tienen habilitado ese servicio desde el servidor por lo que el sistema debe contar con algun sistema tipo phpMailer o parecido para asegurarnos de que "A PESAR" que el hosting no tenga habilitadas las características de email nosotros podamos enviar igual los correos de activación/recuperación y que podamos estar seguros de que llegan de la forma correcta sin sobresaltos (esto debe ser testeado ampliamente antes de er utilizado porque despues nos encontramos con problemas como que los correos los envian directo a la carpeta de no deseados)

Bueno, creo que esta listita de características deseables en un sistema de login en php son lo mas descriptivo que logré hacer, de echo me dijeron que para que quiero una clase abstracta si solo utilizo MySQL a lo que yo respondo que siempre hay algun marciano o algun androyde jeje

bien, espero alguna otra sugerencia si es que me olvidé de algo y ojala resulte útil esta listita para quien quiera crear un buen sistema de logueo que tenga en cuenta estas características a la hora de crearlo, se que pueden haber muchas mas características pero no se me ocurrieron!!

No hay comentarios:

Publicar un comentario

Gracias por tu lectura