¿Opiniones sobre un modelo de sesiones?
Publicado por Jean Piffaut (1 intervención) el 25/11/2022 16:33:44
A modo de estudio quiero desarrollar una plantilla API la cual me permita tener lo básico de cualquier aplicación como podría ser la gestión de Usuarios y Sesiones.
Con eso en mente, quiero estandarizar las sesiones teniendo en mente oauth2, con el fin de poder generar sesiones simples de usuario y contraseña pero con una estructura similar a la que se usaría para iniciar sesión con Google.
Genere un modelo de relaciones: Trate de adjuntar la imagen pero no pude :( pero seria este
User: id, name, email
Credential: id, user_id, auth_type, username, token
Session: id, user_id, token, creation_date, last_activity, life_time
User: Seria el usuario clásico con información muy básica
Credential: Dependiendo del tipo de registro, el token variaría entre el token de Google o Facebook por ejemplo y en casos de registros simples, el token seria la contraseña hasheada.
Session: seria el registro de que este usuario esta activo actualmente en la APP, considerando su creación, el tipo de vida inactivo y la ultima actividad.
PD: Los id son string ya que tenia pensado aplicarlo en Firestore, pero al ser relacional me lo estoy replanteando.
Con eso en mente, quiero estandarizar las sesiones teniendo en mente oauth2, con el fin de poder generar sesiones simples de usuario y contraseña pero con una estructura similar a la que se usaría para iniciar sesión con Google.
Genere un modelo de relaciones: Trate de adjuntar la imagen pero no pude :( pero seria este
User: id, name, email
Credential: id, user_id, auth_type, username, token
Session: id, user_id, token, creation_date, last_activity, life_time
User: Seria el usuario clásico con información muy básica
Credential: Dependiendo del tipo de registro, el token variaría entre el token de Google o Facebook por ejemplo y en casos de registros simples, el token seria la contraseña hasheada.
Session: seria el registro de que este usuario esta activo actualmente en la APP, considerando su creación, el tipo de vida inactivo y la ultima actividad.
PD: Los id son string ya que tenia pensado aplicarlo en Firestore, pero al ser relacional me lo estoy replanteando.
Valora esta pregunta
0