hunkstalker / Cinetics

PHP website where you can upload videos and rate them.
1 stars 1 forks source link

Auto-login #38

Closed hunkstalker closed 2 years ago

hunkstalker commented 2 years ago

Inicio de sesión automático al verificar el mail después del registro.

hunkstalker commented 2 years ago

Básicamente si con el token que recibimos del mail se puede activar la cuenta entonces podemos estar tranquilos de que es el usuario correcto el que está detrás. Por lo tanto le daremos a la variable $_SESSION correspondiente los permisos de navegación adecuados como si hubiera hecho login (lo mismo que haríamos si el usuario hace login).

$_SESSION técnicamente es una variable global con un array asociativo, no es una cookie, o lo es pero por el lado de servidor por lo que el método es seguro, no se guarda nada ni se puede manipular en el lado del cliente, por eso la uso para guardar todos los datos de sesión o info que necesitemos llevarnos cuando el usuario realiza acciones. De hecho lo único vulnerable y que no podemos controlar nunca es que todo se comprueba bajo la cookie llamada PHPSESSID, que la genera el mismo servidor en el lado del cliente (el navegador) y que contiene una cadena con la que el servidor comprueba la identidad del usuario. Si copias y pegas esa cookie en otro PC puedes suplantar la identidad (lo vimos en clase).

hunkstalker commented 2 years ago

He creado una función que inmediatamente después de activar la cuenta hace una consulta a bbdd para recuperar todos los datos y permitir el acceso al usuario y al resto de la web. Caso cerrado.