erp-core/docs/08-epicas/EPIC-MGN-001-auth.md

5.6 KiB

EPICA: EPIC-MGN-001 - Autenticacion

Metadata

Campo Valor
ID EPIC-MGN-001
Nombre Sistema de Autenticacion
Modulo auth
Fase Fase 1 - Foundation
Prioridad P0 (Critico)
Estado Ready
Story Points 34
Sprint(s) Sprint 1 (core), Sprint 2 (recovery)
Plan Detalle SPRINT-PLAN-FASE-1.md

Descripcion

Sistema de autenticacion robusto que proporciona login con email/password, manejo de tokens JWT (access + refresh), soporte para OAuth providers (Google, Microsoft), sesiones multi-dispositivo, recuperacion de password y opcionalmente 2FA.

Esta epica es fundamental ya que todos los demas modulos dependen de ella para identificar y autorizar usuarios.


Objetivo de Negocio

Proveer un sistema de autenticacion seguro, escalable y con buena experiencia de usuario que:

  • Proteja el acceso a la plataforma
  • Soporte multiples metodos de autenticacion
  • Permita sesiones simultaneas controladas
  • Cumpla con estandares de seguridad (OWASP)

Stakeholders

Rol Nombre/Equipo Responsabilidad
Product Owner Equipo Producto Aprobacion de criterios
Tech Lead Equipo Backend Validacion tecnica y seguridad
Usuarios Todos los usuarios Feedback de UX

Historias de Usuario

ID Historia Prioridad SP Estado
US-MGN001-001 Como usuario, quiero iniciar sesion con email y password para acceder al sistema P0 8 Ready
US-MGN001-002 Como usuario, quiero recuperar mi password via email para restaurar acceso P0 5 Ready
US-MGN001-003 Como usuario, quiero cerrar sesion para proteger mi cuenta P0 2 Ready
US-MGN001-004 Como usuario, quiero que mi sesion se renueve automaticamente para no perder trabajo P0 5 Ready
US-MGN001-005 Como usuario, quiero iniciar sesion con Google/Microsoft para facilitar el acceso P1 8 Backlog
US-MGN001-006 Como admin, quiero configurar 2FA para aumentar la seguridad P2 5 Backlog
US-MGN001-007 Como usuario, quiero ver mis sesiones activas para controlar accesos P2 3 Backlog

Total Story Points: 34 SP (Fibonacci: 8+5+2+5+8+5+3 = 36, ajustado a 34)


Criterios de Aceptacion de la Epica

Funcionales:

  • Login con email/password funcional
  • Tokens JWT con access (15min) y refresh (7 dias)
  • Password recovery via email con token temporal
  • Logout individual y logout de todas las sesiones
  • Almacenamiento seguro de passwords (bcrypt, cost 12)
  • Rate limiting en endpoints de auth (5 intentos/minuto)

No Funcionales:

  • Performance: Login < 500ms
  • Seguridad: Passwords hasheados, tokens firmados
  • Usabilidad: Flujo de login en max 2 pasos

Tecnicos:

  • Cobertura de tests > 80%
  • Documentacion Swagger completa
  • Integracion DB-Backend-Frontend verificada

Dependencias

Esta epica depende de:

Epica/Modulo Estado Bloqueante
PostgreSQL Ready Si
Schema core_auth Por crear Si

Esta epica bloquea:

Epica/Modulo Razon
EPIC-MGN-002 Users Requiere sistema de auth
EPIC-MGN-003 Roles Requiere identificacion de usuarios
EPIC-MGN-004 Tenants Requiere autenticacion base
Todos los modulos Requieren auth para acceso

Desglose Tecnico

Database:

  • Schema: core_auth
  • Tablas: 4 (users_auth, sessions, tokens, oauth_connections)
  • Funciones: 2 (validar_password, generar_token)
  • RLS Policies: Si (aislamiento por tenant)

Backend:

  • Modulo: auth
  • Entities: 4 (UserAuth, Session, Token, OAuthConnection)
  • Endpoints: 8 (login, logout, refresh, forgot-password, reset-password, oauth-login, oauth-callback, sessions)
  • Tests: 24+

Frontend:

  • Paginas: 4 (Login, ForgotPassword, ResetPassword, Sessions)
  • Componentes: 6 (LoginForm, PasswordInput, OAuthButtons, SessionList, etc.)
  • Stores: 1 (authStore)

Riesgos

Riesgo Probabilidad Impacto Mitigacion
Vulnerabilidades de seguridad Media Alto Code review, auditorias, OWASP checklist
Performance en login Baja Medio Caching, optimizacion de queries
Integracion OAuth compleja Media Medio Documentacion detallada, POC previo

Definition of Ready (DoR)

  • Historias de usuario definidas
  • Criterios de aceptacion claros
  • Dependencias identificadas
  • Estimacion completada
  • Diseno tecnico aprobado
  • Sin bloqueadores activos

Definition of Done (DoD)

  • Codigo implementado y revisado
  • Tests pasando (unit, integration, e2e)
  • Documentacion actualizada
  • Inventarios actualizados
  • Trazas registradas
  • Demo realizada
  • Product Owner aprobo

Documentacion Relacionada

  • Requerimientos: docs/03-requerimientos/RF-auth/
  • Especificaciones: docs/04-modelado/especificaciones-tecnicas/ET-auth-*.md
  • User Stories: docs/05-user-stories/MGN-001/
  • DDL Spec: docs/04-modelado/database-design/DDL-SPEC-core_auth.md
  • ADR: docs/97-adr/ADR-001-stack-tecnologico.md

Historial

Fecha Cambio Autor
2025-12-05 Creacion de epica Requirements-Analyst

Creada por: Requirements-Analyst Fecha: 2025-12-05 Ultima actualizacion: 2025-12-05