Solucionado el problema

Luego de preguntar en gamedev y verificar algunas cosas encontré un error que em estaba molestando desde que implementé la autentificación contra la base de datos. El problema era que nombré un campo "user" y Postgres al realizar las consultas me devolvía en lugar del valor de la tabla el nombre del usuario que realizaba la consulta. Renombré el campo a username y ya funciona adecuadamente el select.
Como un plus, me dieron un consejo. Tenía pensado en caso de un login fallido informarle al usuario si la contraseña era incorrecta o si simplemente había escrito mal el nombre. Pero me advirtieron que de este modo un posible atacante solo tendría que hacer M+N búsquedas para encontrar un nombre de usuario válido y su contraseña. Sin embargo, si solo le informo que hay un error de usuario/contraseña, tendrá que hacer M*N intentos para encontrar el par válido.
De igual forma, tengo pendiente implementar una validación de el nombre de usuario y contraseña para evitar posibles ataques de sql injection.

Comentarios