wiki/Cumplimiento/Audit trail: quién hizo qué, cuándo, y por qué puede fiarse de la respuesta
06CumplimientoLectura mínima 3

Audit trail: quién hizo qué, cuándo, y por qué puede fiarse de la respuesta

Cómo eventos append-only, una capa de revisión pensada para personas y una cadena hash tamper-evident convierten el “creo que” en evidencia.

Un audit trail que se puede editar no es un audit trail. Es un documento de trabajo con sombrero serio. ReVend OS está construido para poder reconstruir después la actividad crítica: quién actuó, qué cambió, qué registro se tocó y si el propio rastro sigue cuadrando.

Eventos de actividad

Mutaciones server-side, lecturas sensibles, acceso a documentos, descargas de evidencia, resultados de cron, resultados de webhook, overrides de admin y eventos de seguridad escriben filas de actividad. Llevan actor, tenant, acción, resultado, sensibilidad y metadata acotada. Secretos en crudo, contraseñas, URLs firmadas y datos de pago no pintan nada ahí. El sanitizer ayuda, pero la estrategia de verdad es no meter cosas peligrosas en la caja.

Cadena tamper-evident

Los eventos de auditoría se encadenan por tenant con un hash SHA-256, empezando por una fila GENESIS. Cada evento nuevo incluye la cabeza anterior, así que una edición silenciosa rompe la cadena, y una rutina de verificación puede recorrerla. Eso no convierte la base de datos en un tribunal por sí solo, pero le da a la plataforma una forma de detectar que la historia ya no cuadra consigo misma. A los auditores les gusta la historia capaz de sostener la mirada.

La página de revisión se lee como una frase

/general/activity es la vista para personas, y arranca con lenguaje humano: cada fila abre con un resumen llano de lo que pasó, no con un estado de máquina. Ese mismo resumen es la primera línea del panel de detalle, de la exportación CSV y de los pequeños paneles de actividad reciente de otras pantallas. Origen, correlación y metadata extra siguen disponibles donde aportan significado; metadata vacía e IDs de recurso repetidos no son detalle de producto.

Los filtros mantienen la respuesta usable en vez de convertir la pantalla en confeti: búsqueda, dominio, acción, resultado, sensibilidad, visibilidad, tabla de origen, rango de fechas y organización cuando el alcance de plataforma lo permite. La exportación CSV pregunta antes —la página actual o todo lo que casa con sus filtros— y lo segundo exige un rango de fechas, para que una exportación no pueda abarcar sin querer toda la historia.

El personal de plataforma lo lee entre tenants, y además tiene su propia página de actividad en la parte de admin. Los admins de tenant ven su propio tenant, filas sensibles incluidas, pero nunca filas exclusivas de plataforma. Los usuarios de tenant normales ven la entrada de menú y ningún dato: la página les dice que el registro de actividad es para admins de tenant, lo que es mejor que un 404 fingiendo que no existe.

Mirar no es hacer

Cargar una página normal no es una acción de negocio. Abrir una ruta, refrescar, buscar, ordenar, paginar, cambiar de pestaña, abrir un modal, cambiar un filtro: nada de eso escribe actividad, porque nada de eso cambia datos, estado, derechos, evidencia, dinero, publicación, un caso de soporte, una postura de seguridad o el comportamiento de una integración. Un rastro que registra el mirar entierra el rastro que registra el hacer.

Las lecturas genuinamente sensibles son otra cosa: contexto de plataforma entre tenants, acceso a documentos, adjuntos de soporte e historial de ofertas consultado por la API se graban como lecturas sensibles —deduplicadas, o vistas a través de una lente de evidencia— y no como ruido genérico de “página vista”.

Agrupar es presentación, no borrado

Eventos consecutivos de sistema y de runtime con poca información que comparten alcance, significado, resultado y recurso pueden agruparse en la capa de revisión como una sola fila con un recuento y un rango de tiempo. Las filas individuales siguen en el panel de detalle, y la exportación CSV las sigue escribiendo una a una. Las acciones humanas de negocio no se colapsan nunca, por parecidas que se vean. Dos personas haciendo lo mismo dos veces es un hecho, no un duplicado.

Qué comprueba el auditor

El rastro demuestra integridad, autoría, cronología y exhaustividad. Si un registro se movió, ReVend debería mostrar quién lo movió, cuándo, por qué estaba permitido y qué evidencia lo acompañaba. Si la respuesta es “probablemente Dave”, la auditoría ya ha ido mal.