Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Bryacg/Adutem/llms.txt

Use this file to discover all available pages before exploring further.

En ADUTEM, la identidad de una persona y sus credenciales de acceso al sistema se gestionan a través de dos entidades distintas: persona y usuario. Esta separación permite registrar los datos personales de un socio o docente de forma independiente a sus credenciales de inicio de sesión, lo que facilita la administración del padrón institucional sin necesariamente otorgar acceso al sistema a cada persona registrada.
El registro de nuevos usuarios requiere la intervención del administrador del sistema. No existe un flujo de registro público disponible para los usuarios finales.

Relación entre persona y usuario

Antes de crear un usuario, debe existir una persona registrada en el sistema. El modelo usuario referencia a persona mediante el campo persona_id, estableciendo una relación uno a uno.
persona (datos personales)
  └── usuario (credenciales de acceso)
        ├── convenios (acuerdos asociados al usuario)
        └── reservas (reservaciones de áreas recreativas)
Un usuario hereda el contexto de su persona asociada, lo que permite que el sistema muestre el nombre completo, cédula y demás datos del socio una vez iniciada la sesión.

Campos del modelo usuario

La siguiente tabla describe los campos que componen el modelo usuario en la base de datos:
CampoTipoDescripción
idIntIdentificador único del usuario (clave primaria)
correoStringCorreo institucional del usuario (@utm.edu.ec)
contraseñaStringContraseña de acceso al sistema
persona_idIntReferencia a la persona asociada (clave foránea)
creacion_usuarioDateTimeFecha y hora de creación del registro de usuario
El campo correo del modelo usuario debe coincidir con el correo institucional registrado en el modelo persona. Ambos se relacionan mediante persona_id, no por correo.

Datos asociados a un usuario

Además de sus credenciales, un usuario tiene asociados registros en otras entidades del sistema:
  • Convenios (convenios): acuerdos suscritos con empresas y organizaciones externas que otorgan beneficios al usuario (descuentos en salud, óptica, farmacia, entre otros).
  • Reservas (reservas): reservaciones realizadas por el usuario en las áreas recreativas de ADUTEM (piscina, canchas, salón de eventos, zona de parrillada).
Estos datos se consultan a través de los módulos correspondientes del sistema y están vinculados al usuario_id almacenado en la sesión activa.

Consulta de usuarios (administración)

El endpoint GET /api/auth/login devuelve la lista de todos los usuarios registrados en el sistema. Este recurso está destinado al uso administrativo para consultar el padrón de cuentas activas.
GET /api/auth/login
La respuesta incluye los datos del modelo usuario junto con la información de la persona asociada a cada cuenta.

Gestión de sesión activa

Cuando un usuario inicia sesión correctamente, el sistema almacena su id en una cookie del servidor. Esta cookie identifica al usuario durante toda la sesión:
Cookie: usuario_id=<id>
La cookie tiene las siguientes propiedades de seguridad:
  • httpOnly: el navegador bloquea el acceso desde JavaScript, lo que protege el identificador frente a ataques XSS.
  • sameSite: lax: la cookie se envía en navegaciones normales pero no en solicitudes de origen cruzado iniciadas por terceros.
  • path: /: la cookie está disponible en todas las rutas del sistema.
Para cerrar la sesión y eliminar la cookie, el sistema expone el endpoint /api/auth/logout.

Continúa explorando

Registro de socios

Aprende a registrar una nueva persona en el padrón de ADUTEM antes de crear su usuario

Referencia de autenticación

Consulta la documentación técnica de los endpoints de autenticación

Build docs developers (and LLMs) love