Skip to main content

Visión General de la Arquitectura

La plataforma apolo-app-platcom-platform está diseñada como una solución regional de seguridad, auditoría y observabilidad para el ecosistema de sistemas de Cencosud. Su objetivo principal es centralizar la trazabilidad de acciones sensibles (logins, cambios de permisos, operaciones críticas, etc.) y proporcionar capacidades de análisis y reporting orientadas a compliance y gobierno.

Objetivos de la Arquitectura

  • Centralizar la información de auditoría y seguridad generada por múltiples sistemas.
  • Estandarizar la forma en que las aplicaciones publican eventos de auditoría.
  • Garantizar trazabilidad de extremo a extremo (desde el evento hasta el usuario/rol que lo ejecutó).
  • Escalar horizontalmente a medida que se integran nuevos sistemas, países y dominios.
  • Facilitar el cumplimiento de políticas internas y normativas regulatorias.

Enfoque Arquitectónico

La plataforma adopta principalmente:

  • Arquitectura orientada a eventos (Event-Driven) para la ingesta de auditoría.
  • Microservicios para separar responsabilidades (auth, aplicaciones, tenants, reportes, etc.).
  • Backend for Frontend (BFF) como punto único de entrada para el portal web.
  • Monorepo con Nx para gestionar coherentemente apps backend, frontend y librerías compartidas.
  • Infraestructura basada en contenedores (Docker + Docker Compose) para el entorno local.

Componentes Clave

A alto nivel, la solución se compone de:

  • Ecosistema Cencosud
    Aplicaciones y sistemas corporativos que publican eventos de auditoría utilizando la librería/SDK de Apolo.

  • Plataforma Regional (Monorepo Nx)

    • Servicios backend (bff-api, auth-api, applications-api, core-api, reports-api, tenants-api, tracking-api, etc.).
    • Portal web de auditoría (portal-web).
    • Portal de documentación (devs-portal con Docusaurus).
  • Infraestructura de Datos y Mensajería

    • Kafka / Redpanda como backbone de eventos.
    • MongoDB como base de datos principal de auditoría.
    • Redis para cache y optimización de ciertas operaciones.
  • Sistemas Externos de Identidad y Accesos

    • apolo-rm-access-management como repositorio externo para usuarios, roles y scopes.
    • Sistemas IAM / ADFS corporativos para autenticación e identidad.

Flujo General (Resumen)

  1. Un usuario realiza una acción en una aplicación del ecosistema Cencosud.
  2. La aplicación utiliza la librería de auditoría de la plataforma para publicar un evento tipado en Kafka.
  3. La plataforma consume los eventos, los valida, los enriquece y los almacena en MongoDB.
  4. El equipo de seguridad y otros stakeholders consultan los eventos y reportes desde el portal-web, que se comunica con el BFF y los microservicios backend.
  5. Para información de identidad (usuarios, roles, scopes), la plataforma consulta apolo-rm-access-management y sistemas IAM externos.

Para más detalle visual, consulta la sección de Diagramas y el Contexto del Sistema.