Saltar a contenido

Componentes del sistema

complyx-agent

Proceso ligero escrito en Rust que se ejecuta en cada endpoint. Responsable de:

  • Descargar y verificar la firma criptográfica de las políticas JSON asignadas.
  • Ejecutar comprobaciones de cumplimiento (policy_checks) de forma periódica.
  • Aplicar remediaciones (policy_remediations) cuando se detectan incumplimientos.
  • Enviar resultados al servidor mediante mTLS.
  • Mantener una cola local de eventos en SQLite para operación offline.

complyx-server

Servicio Rust responsable de la orquestación de agentes:

  • Gestiona la PKI interna: CA raíz, emisión y revocación de certificados de cliente y servidor.
  • Acepta conexiones mTLS de los agentes en el puerto 9443.
  • Distribuye políticas a agentes según su grupo, SO o asignación directa.
  • Consolida los resultados recibidos y los persiste en PostgreSQL.

complyx-api

API REST construida con Spring Boot / Java:

  • Expone todos los recursos del sistema (usuarios, agentes, políticas, normativas, riesgos).
  • Gestiona autenticación JWT y control de acceso basado en roles (RBAC).
  • Es consumida exclusivamente por la UI; desacoplada de la lógica del agente.

complyx-ui

Aplicación web Angular empaquetada con Electron:

  • Funciona como PWA o aplicación de escritorio multiplataforma.
  • Renderizado dinámico de vistas según el rol autenticado (Administrador, Técnico, Auditor).
  • No contiene lógica de negocio; toda operación va a través de la API REST.

complyx-db

Base de datos PostgreSQL compartida por la API y el servidor:

  • Almacena usuarios, roles, agentes, grupos, políticas, normativas, riesgos y eventos.
  • Esquema definido en 01_create_tables.sql.