Appearance
Modelo RBAC del Sistema
El sistema implementa un modelo RBAC (Role-Based Access Control) completamente definido en base de datos.
RBAC significa que los permisos no se asignan directamente a usuarios, sino a roles.
Los usuarios heredan permisos a través de los roles que poseen.
Componentes principales del modelo
El modelo se compone de cinco piezas fundamentales:
- roles
- apps_modulos
- modulos_acciones
- roles_modulos
- roles_acciones
Cada una cumple una función específica dentro del sistema de permisos.
Flujo lógico cuando un usuario ingresa
- El usuario se autentica.
- Se determinan sus roles.
- Se obtienen los módulos visibles según sus roles.
- Se obtienen las acciones permitidas dentro de esos módulos.
- Se construye el menú final.
El frontend no toma decisiones de seguridad.
Solo renderiza lo que el backend devuelve.
Principio central
Si algo no está modelado en base de datos:
No existe.
El menú, los botones, las acciones y las capacidades del usuario son consecuencia directa del modelo.
No hay excepciones en el frontend. No hay permisos hardcodeados.