Skip to content

Auditoría y Debugging del Modelo RBAC

Cuando un usuario ve algo que no debería ver (o no ve algo que debería ver), el problema siempre está en el modelo.

Nunca en el frontend.

El análisis debe hacerse en capas.


Paso 1 – Ver roles del usuario

Consultar qué roles tiene asignados.

El usuario hereda permisos exclusivamente a través de sus roles.

Si un rol extra está asignado, puede estar sumando permisos.


Paso 2 – Ver roles_modulos

Verificar:

  • Qué módulos están asignados a cada rol.
  • Si un módulo aparece asignado de más.

Si el rol no está en roles_modulos, el módulo no debería aparecer.


Paso 3 – Ver roles_acciones

Revisar:

  • Qué acciones tiene realmente el rol.
  • Si el LITE fue correctamente limpiado.
  • Si existen acciones heredadas por error.

Aquí viven los permisos finos.


Paso 4 – Ver resultado final

Consultar la vista o función:

  • v_menu_usuario
  • obtener_menu_usuario_v2

Esta es la verdad final que consume el frontend.


Problemas típicos

  • Módulo asignado de más.
  • Limpieza LITE faltante.
  • Acciones creadas antes de asignar el módulo.
  • Múltiples roles sumando permisos inesperadamente.
  • Entorno donde el trigger no estaba activo.

Regla práctica

Nunca debuggear desde la UI.

Siempre seguir el flujo:

Usuario → Roles → roles_modulos → roles_acciones → Vista final.