Inteligencia de Activos y Seguridad · Sete Lagoas Transportes LTDA

Plataforma de Inteligencia de Activos Cognito

Cognito es una plataforma multi-tenant de gestión de activos, monitoreo de seguridad y helpdesk que abarca alrededor de 130.000 líneas de Go, TypeScript y C++. Agentes Windows firmados reportan inventario y métricas de sistema en vivo por MQTT hacia un pipeline en Go acotado y con back-pressure; TimescaleDB guarda la serie temporal, y el aislamiento de tenant lo garantiza la base de datos, no la aplicación.

En Producción
Resultados
125 endpoints, en producciónFlota
Ingesta idempotente, overflow reprocesableEntrega
Garantizado por PostgresAislamiento de Tenant
−50% bytes/opAsignación en Ruta Caliente
Arquitectura
Flota de Agentes Windows connects to Broker MQTT via MQTT · QoS 1 control, 0 muestreo. Broker MQTT connects to Cola de Ingesta Acotada via Admisión No Bloqueante. Cola de Ingesta Acotada connects to Escritor de Telemetría via Consumidor Único. Escritor de Telemetría connects to Cola Dead-Letter via Reintentos Agotados. Escritor de Telemetría connects to Detector de Manipulación. Escritor de Telemetría connects to Correlación de CVE. Escritor de Telemetría connects to TimescaleDB. Detector de Manipulación connects to TimescaleDB. Correlación de CVE connects to TimescaleDB. TimescaleDB connects to Fan-Out en Tiempo Real via Modelo de Lectura. Fan-Out en Tiempo Real connects to Panel del Operador via WebSockets.
Notas de Ingeniería

En uso diario en producción en 125 endpoints, donde ha detectado manipulación real de hardware a partir de diffs de snapshots, exposición a CVE correlacionada entre varias máquinas, y alertas de disco, red y detección de endpoint provenientes de las integraciones UniFi y Bitdefender.

La admisión es un envío no bloqueante a un canal acotado, de modo que lo que ocurre cuando el pipeline se satura se decidió de antemano, y no se descubrió bajo carga. El overflow reintenta brevemente y luego acaba en una tabla dead-letter duradera, que un replayer drena con backoff.

Cada ingesta se identifica por agente, timestamp del snapshot y un SHA-256 del payload crudo, y se verifica contra un ledger con retención acotada antes de cualquier escritura — así un agente que reintenta una publicación colapsa en una única transición de estado en lugar de repetir el trabajo.

La detección de cambios fue perfilada y reescrita para comparar hashes de contenido normalizado en vez de serializar ambos snapshots a JSON, reduciendo a la mitad la asignación en la ruta más caliente y eliminando un viaje a la base de datos en el caso común, sin cambios.

Cada tabla con alcance de tenant lleva una política de row-level security leída desde una configuración local a la transacción, de modo que un error en la capa de aplicación no puede devolver las filas de otro tenant — Postgres no las produce.

El agente de endpoint fue escrito dos veces. El original es una implementación en C++23 que usa std::expected y una caché local cifrada con DPAPI, accionada por disparadores de evento tras un debouncer RAII; el agente en Go que lo reemplaza cumple las mismas responsabilidades bajo un modelo de sondeo concurrente.

Las versiones del agente se compilan de forma cruzada en CI y se firman con Ed25519, y el actualizador rechaza de plano un binario sin firmar. Los comandos remotos llevan tokens HMAC derivados jerárquicamente cuyo payload firmado vincula el resultado y el timeout, de modo que un agente no puede extender su propia autorización.

Tecnologías Principales
GoTypeScriptReactTimescaleDBMQTTCentrifugoUniFiBitdefenderC++23 (prior agent)