erp-core/docs/05-user-stories/mgn-003/BACKLOG-MGN-003.md

6.5 KiB

Backlog del Modulo MGN-003: Roles/RBAC

Resumen

Campo Valor
Modulo MGN-003
Nombre Roles/RBAC - Control de Acceso
Total User Stories 4
Total Story Points 29
Estado En documentacion
Fecha 2025-12-05

User Stories

Sprint 2 - Core RBAC (29 SP)

ID Nombre SP Prioridad Estado
US-MGN003-001 CRUD de Roles 8 P0 Ready
US-MGN003-002 Gestion de Permisos 5 P0 Ready
US-MGN003-003 Asignacion Roles-Usuarios 8 P0 Ready
US-MGN003-004 Control de Acceso RBAC 8 P0 Ready

Stories Adicionales (No incluidas en scope inicial)

ID Nombre SP Prioridad Estado
US-MGN003-005 Roles Temporales 3 P2 Backlog
US-MGN003-006 Herencia de Roles 5 P2 Backlog
US-MGN003-007 Auditoria de Cambios RBAC 3 P1 Backlog
US-MGN003-008 Permisos Contextuales 5 P2 Backlog

Roadmap Visual

Sprint 2
├─────────────────────────────────────────────────────────────────┤
│ US-001: CRUD de Roles                                   [8 SP]  │
│ US-002: Gestion de Permisos                             [5 SP]  │
│ US-003: Asignacion Roles-Usuarios                       [8 SP]  │
│ US-004: Control de Acceso RBAC                          [8 SP]  │
├─────────────────────────────────────────────────────────────────┤
│ Total: 29 SP                                                     │
└─────────────────────────────────────────────────────────────────┘

Dependencias entre Stories

                    ┌─────────────────┐
                    │  MGN-001 Auth   │
                    │  (JWT/Login)    │
                    └────────┬────────┘
                             │
                             ▼
              ┌──────────────────────────┐
              │    US-MGN003-002         │
              │  Gestion de Permisos     │
              │  (Catalogo de permisos)  │
              └────────────┬─────────────┘
                           │
                           ▼
              ┌──────────────────────────┐
              │    US-MGN003-001         │
              │    CRUD de Roles         │
              │  (Roles con permisos)    │
              └────────────┬─────────────┘
                           │
                           ▼
              ┌──────────────────────────┐
              │    US-MGN003-003         │
              │  Asignacion Roles        │
              │  (Usuarios con roles)    │
              └────────────┬─────────────┘
                           │
                           ▼
              ┌──────────────────────────┐
              │    US-MGN003-004         │
              │  Control de Acceso       │
              │  (Guards y decoradores)  │
              └────────────┬─────────────┘
                           │
                           ▼
              ┌──────────────────────────┐
              │   Todos los endpoints    │
              │   del sistema usan RBAC  │
              └──────────────────────────┘

Criterios de Aceptacion del Modulo

Funcionalidad

  • Admins pueden crear, listar, editar y eliminar roles personalizados
  • Roles built-in no pueden eliminarse ni modificarse (solo extender)
  • Permisos se muestran agrupados por modulo
  • Usuarios pueden tener multiples roles
  • Permisos efectivos son la union de todos los roles
  • Wildcards funcionan correctamente (users:* -> users:read, etc.)
  • Control de acceso en TODOS los endpoints protegidos

Seguridad

  • Solo super_admin puede asignar rol super_admin
  • Al menos un super_admin debe existir siempre
  • Errores 403 no revelan que permiso falta
  • Logs de acceso denegado para auditoria
  • Cache de permisos se invalida al cambiar roles

Performance

  • Permisos cacheados por 5 minutos
  • Validacion de permisos < 10ms (desde cache)
  • Invalidacion de cache inmediata

Estimacion Total

Capa Story Points
Backend: Endpoints 10
Backend: Guards/Decorators 8
Backend: Cache 4
Backend: Tests 7
Frontend: Pages 8
Frontend: Components 6
Frontend: Tests 5
Total 48

Nota: Las 4 US principales suman 29 SP. La estimacion detallada de 48 SP incluye integracion y overhead.


Definition of Done del Modulo

  • Todas las User Stories completadas
  • Permisos seeded en base de datos
  • Roles built-in creados para cada tenant
  • Guards aplicados a todos los endpoints existentes
  • Tests unitarios > 80% coverage
  • Tests e2e de flujos RBAC
  • Documentacion Swagger completa
  • Code review aprobado
  • Security review aprobado
  • Despliegue en staging exitoso
  • UAT aprobado

Riesgos y Mitigaciones

Riesgo Impacto Probabilidad Mitigacion
Performance de validacion Alto Media Cache de permisos
Cache desincronizado Alto Baja Invalidacion inmediata
Configuracion incorrecta Medio Media Tests exhaustivos
Bloqueo de usuarios Alto Baja Super Admin bypass

Historial

Version Fecha Autor Cambios
1.0 2025-12-05 System Creacion inicial con 4 US