es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Crear “sesión” – JWT + DB – Buenas prácticas

Estoy diseñando una API desde cero y tengo algunas preguntas de principiante sobre el registro / inicio de sesión de usuarios.

Puedes encontrar el diagrama de mi solicitud de creación de sesión aquí -> enlace.

En primer lugar, ¿este tipo de diseño te parece correcto?

En segundo lugar, me pregunto cuál es la mejor manera de manejar un usuario que abre más de una sesión desde el mismo agente. ¿Debería cerrar la última sesión y crear una nueva o, como se muestra en el diagrama, obtener la última sesión abierta de la base de datos y crear nuevos tokens a partir de eso?

Lamento si todo esto parece obvio para la mayoría de ustedes, pero no puedo encontrar una respuesta adecuada en la web.

¡Mis mejores deseos para este nuevo año!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en API, REST, sesión y JWT, diría que el diseño de la solicitud de creación de sesión parece sólido. Sigue el patrón de diseño estándar de API RESTful, que separa las preocupaciones de los datos del comportamiento del servidor.

    En cuanto a la cuestión de que un usuario abra múltiples sesiones desde el mismo agente, existen un par de enfoques que se pueden tomar según los requisitos de su aplicación. Una opción es cerrar la sesión anterior del usuario y crear una nueva. Sin embargo, esto puede no ser la mejor opción, ya que interrumpiría la sesión existente del usuario y posiblemente causaría pérdida de datos.

    Una mejor manera de manejar este problema sería admitir varias sesiones activas para un solo usuario, pero limitar el número de sesiones simultáneas por usuario a un número razonable (por ejemplo, tres o cuatro). Puede implementar esto almacenando las sesiones activas actuales del usuario en la base de datos y verificando el número de sesiones frente al límite cada vez que se crea una nueva sesión. Si se excede el límite, puede pedir al usuario que cierre una de sus sesiones existentes antes de abrir una nueva.

    En conclusión, el diseño de la solicitud de creación de sesión parece bueno, y la mejor manera de manejar que los usuarios abran múltiples sesiones desde el mismo agente depende de los requisitos de su aplicación. ¡Feliz Año Nuevo!

Comments are closed.