# _MAP: MGN-003 - Roles y Permisos **Modulo:** MGN-003 **Nombre:** Roles y Permisos (RBAC) **Fase:** 01 - Foundation **Story Points:** 40 SP **Estado:** Migrado GAMILIT **Ultima actualizacion:** 2025-12-05 --- ## Resumen Sistema de control de acceso basado en roles (RBAC) que permite definir roles, permisos granulares y asignarlos a usuarios. --- ## Metricas | Metrica | Valor | |---------|-------| | Story Points | 40 SP | | Requerimientos (RF) | 4 | | Especificaciones (ET) | 2 | | User Stories (US) | 4 | | Tablas DB | 4 | | Endpoints API | 10 | --- ## Requerimientos Funcionales (4) | ID | Archivo | Titulo | Prioridad | Estado | |----|---------|--------|-----------|--------| | RF-ROLE-001 | [RF-ROLE-001.md](./requerimientos/RF-ROLE-001.md) | Gestion de Roles | P0 | Migrado | | RF-ROLE-002 | [RF-ROLE-002.md](./requerimientos/RF-ROLE-002.md) | Gestion de Permisos | P0 | Migrado | | RF-ROLE-003 | [RF-ROLE-003.md](./requerimientos/RF-ROLE-003.md) | Asignacion Usuario-Rol | P0 | Migrado | | RF-ROLE-004 | [RF-ROLE-004.md](./requerimientos/RF-ROLE-004.md) | Verificacion Permisos | P0 | Migrado | **Indice:** [INDICE-RF-ROLE.md](./requerimientos/INDICE-RF-ROLE.md) --- ## Especificaciones Tecnicas (2) | ID | Archivo | Titulo | RF Asociados | Estado | |----|---------|--------|--------------|--------| | ET-RBAC-001 | [ET-rbac-backend.md](./especificaciones/ET-rbac-backend.md) | Backend RBAC | RF-ROLE-001 a RF-ROLE-004 | Migrado | | ET-RBAC-002 | [ET-RBAC-database.md](./especificaciones/ET-RBAC-database.md) | Database RBAC | RF-ROLE-001 a RF-ROLE-004 | Migrado | --- ## Historias de Usuario (4) | ID | Archivo | Titulo | RF | SP | Estado | |----|---------|--------|----|----|--------| | US-MGN003-001 | [US-MGN003-001.md](./historias-usuario/US-MGN003-001.md) | Crear Rol | RF-ROLE-001 | 5 | Migrado | | US-MGN003-002 | [US-MGN003-002.md](./historias-usuario/US-MGN003-002.md) | Asignar Permisos | RF-ROLE-002 | 8 | Migrado | | US-MGN003-003 | [US-MGN003-003.md](./historias-usuario/US-MGN003-003.md) | Asignar Rol a Usuario | RF-ROLE-003 | 5 | Migrado | | US-MGN003-004 | [US-MGN003-004.md](./historias-usuario/US-MGN003-004.md) | Verificar Permiso | RF-ROLE-004 | 8 | Migrado | **Backlog:** [BACKLOG-MGN003.md](./historias-usuario/BACKLOG-MGN003.md) --- ## Implementacion ### Database | Objeto | Tipo | Schema | |--------|------|--------| | roles | Tabla | core_rbac | | permissions | Tabla | core_rbac | | role_permissions | Tabla | core_rbac | | user_roles | Tabla | core_rbac | | user_has_permission | Funcion | core_rbac | | get_user_permissions | Funcion | core_rbac | ### Backend | Objeto | Tipo | Path | |--------|------|------| | RolesModule | Module | src/modules/roles/ | | RolesService | Service | src/modules/roles/roles.service.ts | | PermissionsService | Service | src/modules/roles/permissions.service.ts | | RolesGuard | Guard | src/modules/roles/guards/roles.guard.ts | | PermissionsGuard | Guard | src/modules/roles/guards/permissions.guard.ts | ### Frontend | Objeto | Tipo | Path | |--------|------|------| | RolesPage | Page | src/features/roles/pages/RolesPage.tsx | | RoleDetailPage | Page | src/features/roles/pages/RoleDetailPage.tsx | | PermissionsPage | Page | src/features/roles/pages/PermissionsPage.tsx | --- ## Dependencias **Depende de:** MGN-001 (Auth), MGN-002 (Users) **Requerido por:** Todos los modulos de negocio usan permisos --- ## Trazabilidad Ver: [TRACEABILITY.yml](./implementacion/TRACEABILITY.yml) --- **Generado por:** Requirements-Analyst **Fecha:** 2025-12-05