🔒 Acceso Protegido

Esta documentación requiere autenticación

Skip to content

Autenticación

Módulo de Autenticación

Este módulo gestiona todos los aspectos relacionados con la autenticación y autorización del sistema OnSpot.

Contenido

Descripción General

El módulo de autenticación maneja:

  • Autenticación de usuarios (backoffice, platform, customer)
  • Generación y validación de tokens JWT
  • Gestión de contraseñas (cambio y recuperación)
  • Autorización basada en roles
  • Guardias y estrategias de autenticación

Características Principales

Tipos de Usuario

  • Backoffice: Usuarios administrativos con acceso completo
  • Platform: Usuarios de la plataforma con permisos específicos
  • Customer: Clientes finales con acceso limitado

Seguridad

  • Tokens JWT con expiración configurable
  • Encriptación de contraseñas con bcrypt
  • Validación de roles y permisos
  • Protección contra ataques de fuerza bruta

Funcionalidades

  • Login y logout
  • Registro de nuevos usuarios
  • Recuperación de contraseñas
  • Cambio de contraseñas
  • Validación de tokens
  • Renovación de tokens

Flujo de Autenticación

  1. Login: Usuario envía credenciales
  2. Validación: Sistema verifica credenciales
  3. Token: Se genera JWT con información del usuario
  4. Autorización: Token se usa para acceder a recursos protegidos
  5. Renovación: Token se renueva antes de expirar

Configuración

El módulo utiliza las siguientes variables de entorno:

env
JWT_SECRET="tu-palabra-secreta"
JWT_EXPIRATION_TIME=7d

Uso en Otros Módulos

Para proteger rutas en otros módulos:

typescript
@UseGuards(AuthGuard)
@Get('protected-route')
async getProtectedData(@CurrentUser() user: User) {
  return this.service.getDataForUser(user);
}

Versión: 1.0 | Actualizado: hace 2 meses

Documentación OnspotIntl