Codeigniter: caducidad de la sesión y función "recordarme"
Estoy creando una función "Recordarme" en Codeigniter, normalmente veo bibliotecas / proyectos que configuran una cookie en el usuario con un token, este token se guarda en la base de datos y se compara cada vez que el usuario accede al sitio web.
Sin embargo, en Codeigniter podemos establecer el tiempo de expiración de la sesión, esto me lleva a probar un enfoque diferente, esto es lo que hice:
Puse la session_expiration en config a 0 (sesión infinita)Si el usuario deja "Recordarme" sin marcar, establezco un tiempo de 2 horas en la sesión y la sesión se destruye al cerrar la ventana.Así que mi código de inicio de sesión se ve así:
if (!$this->input->post('remember_me')) {
$this->session->sess_expiration = 7200;
$this->session->sess_expire_on_close = TRUE;
}
$this->session->set_userdata($session_data);
Y mi archivo de configuración:
$config['sess_expiration'] = 0;
$config['sess_expire_on_close'] = FALSE;
No veo que la gente use esta solución en proyectos, he probado esto y parece que funciona bien.
Entonces, para mi pregunta, ¿diría que es una práctica segura? ¿Hay algún peligro de seguridad que deba conocer? Cualquier entrada en esta solución vs cookie + token de base de datos sería genial.