Files

2.3 KiB

DH Inspección V2 — Fase A6

Versión

v0.6.0 · Fase A6 · Panel web administrativo

Rutas web

/login
/
/change-password
/admin/users
/admin/users/new
/admin/users/:id
/admin/roles
/admin/audit

Autenticación web

  • el JWT de acceso y el token de renovación permanecen en cookies seguras;
  • el frontend no almacena JWT en localStorage ni sessionStorage;
  • las escrituras envían x-csrf-token;
  • un acceso vencido intenta una única renovación y repite el request original;
  • una sesión inválida vuelve al login;
  • la contraseña temporal bloquea todos los módulos hasta ser cambiada;
  • el cierre de sesión revoca la sesión actual.

Autorización visible

La navegación y las acciones se ocultan cuando el usuario no dispone del permiso correspondiente. El backend continúa siendo la autoridad definitiva.

Área Permiso
Dashboard dashboard.read
Usuarios users.read, users.create, users.update, users.change_status, users.assign_roles
Roles roles.read, roles.manage
Auditoría audit.read

Resumen administrativo

A6 agrega:

GET /api/v3/dashboard/summary

Requiere dashboard.read y devuelve:

  • usuarios activos;
  • usuarios inactivos;
  • sesiones vigentes;
  • seis eventos recientes de auditoría;
  • fecha de generación.

La lectura se ejecuta dentro de una transacción REPEATABLE READ.

Usuarios

  • búsqueda y filtro por estado;
  • paginación;
  • alta con contraseña temporal y roles;
  • edición de datos personales;
  • activación y desactivación;
  • asignación múltiple de roles;
  • información de último acceso, bloqueo y cambio de contraseña.

Se mantienen las protecciones de A4: no es posible desactivar la propia cuenta, quitar el último administrador de recuperación ni dejar el sistema sin acceso administrativo.

Roles y permisos

  • listado de roles del sistema y personalizados;
  • alta de roles personalizados;
  • edición de nombre y descripción;
  • matriz dinámica de permisos;
  • cantidad de usuarios por rol.

Auditoría

  • filtros por texto, acción, origen y fechas;
  • paginación;
  • detalle técnico en panel lateral;
  • visualización de beforeData, afterData y metadata ya sanitizados.

Migraciones

A6 no cambia el esquema y no incluye migraciones.