Audit Log
Audit Log
El Audit Log es un registro append-only de las acciones sensibles realizadas en JoomlaAI. Proporciona trazabilidad y responsabilidad para operaciones relevantes en seguridad.
Qué se registra
Cada evento que cambia datos o invoca un proveedor IA se escribe en el audit log:
| Tipo de evento | Ejemplos |
|---|---|
| Llamada API | Mensaje chat enviado, job scheduler ejecutado |
| Acción de contenido | Contenido aprobado, rechazado, publicado, regenerado |
| Cambio de configuración | Clave API actualizada, proveedor cambiado, regla budget modificada |
| Autenticación | Login admin (Joomla nativo), capability concedida/revocada |
| Sistema | Plugin instalado, desinstalado, tarea cron ejecutada |
| Error | Error API proveedor, budget excedido, fallo token CSRF |
Lista audit log
Ve a JoomlaAI → Audit Log.
| Columna | Descripción |
|---|---|
| Timestamp | Fecha y hora del evento (UTC) |
| Usuario | Username del actor (o [system] para eventos cron) |
| Tipo evento | Categoría (ver tabla arriba) |
| Acción | Acción específica (ej. chat.send, content.publish, config.api_key_updated) |
| Target | Recurso afectado (ej. session ID, job ID, nombre de ajuste) |
| IP | IP del cliente al momento |
| Resultado | success o failure |
| Detalles | JSON expandible con contexto adicional |
Filtros
| Filtro | Opciones |
|---|---|
| Usuario | Todos / usuario específico |
| Tipo evento | Todos / Llamada API / Acción contenido / Cambio config / Sistema / Error |
| Resultado | Todos / Success / Failure |
| Rango de fecha | Desde / Hasta |
| IP | Filtrar por IP |
Redacción de PII
Los valores sensibles se redactan automáticamente antes de escribir en el audit log. Estos nombres de campo se enmascaran:
api_key,apikey,api-keytoken,access_token,bearersecret,client_secretpassword,passwd
Los valores redactados aparecen como [REDACTED] en la columna Detalles.
Garantía append-only
La tabla audit log (#__joomlaai_audit_log / wpai_audit_log) tiene:
- Sin permiso
UPDATEpara el usuario BD de la aplicación (hardening recomendado). - Sin acción "editar" en la UI.
- La acción "eliminar" está restringida a
core.admin/manage_optionsy se loguea.
En un entorno de alta seguridad, configura el usuario BD para que la aplicación solo pueda INSERT en la tabla audit (no UPDATE/DELETE).
Retención
Los registros se mantienen 365 días por defecto. El cron diario purga los más antiguos.
Para cambiar:
- Joomla: Configuración → Data → Audit log retention (days)
- WP: Ajustes → Data Retention → Audit log (days)
Poner a 0 desactiva la limpieza (indefinidos — recomendado para compliance).
Export
Pulsa Exportar CSV para descargar la vista filtrada como CSV. Las columnas coinciden con la vista lista.
Permisos
| Capability | Acceso |
|---|---|
joomlaai.audit / wpai_view_audit | Ver el audit log |
core.admin / manage_options | Exportar y eliminar registros |
_Última actualización: 2026-05-19 · v2.5.3_


