Appearance
Tablas Principales del Modelo RBAC
El modelo de permisos está compuesto por cinco tablas estructurales.
Cada una cumple un rol específico en la arquitectura del sistema.
1️⃣ roles
Define los perfiles del sistema.
Ejemplos reales:
- USUARIO_PP_CAMPUS
- USUARIO_PP_CAMPUS_LITE
- CURSOS_GESTION
- CURSOS_GESTION_LITE
- ADMIN_GESTION
Punto clave
roles.codigo es la clave humana y estable.
- Es lo que se usa en scripts.
- Es lo que se referencia en lógica.
- Los UUIDs son internos y nunca se hardcodean.
2️⃣ apps_modulos
Define los módulos funcionales y en qué app viven.
Un módulo representa:
- Una sección del menú
- Un bloque funcional
- Una unidad de negocio visible
Ejemplos:
- gestion / Cursos
- gestion / Tramos
- campus / Zona Usuario PP
Regla fundamental
Si un módulo no está asignado a un rol:
- No aparece en el menú
- No existe funcionalmente para ese rol
3️⃣ modulos_acciones
Define las acciones disponibles dentro de un módulo.
Ejemplos:
- Ver
- Buscar
- Editar
- Exportar
- Administrar
Cada acción puede tener:
- nombre
- descripcion
- nombre_menu
- flags (en_desarrollo, en_mantenimiento)
- estado
Esto controla
- Qué botones aparecen
- Qué operaciones están disponibles
- Qué acciones están habilitadas o bloqueadas
4️⃣ roles_modulos
Relaciona rol ↔ módulo.
Define:
- Visibilidad del módulo
- Acceso general al módulo
Es el gate principal del sistema.
Si el rol no está en esta tabla:
- El módulo no aparece
- El trigger de acciones no actúa
5️⃣ roles_acciones
Relaciona rol ↔ acción.
Define permisos finos dentro de un módulo.
Aquí vive el modelo LITE:
- Mismos módulos
- Menos acciones
Es el nivel de control granular.