verified_user Seguridad

Seguridad por
arquitectura.

La seguridad de Araucaria no depende de una sola capa: está diseñada desde la arquitectura. Cada servicio tiene acceso mínimo y las credenciales bancarias están cifradas con estándares de la industria.

lock AES-256-GCM
key_off Zero-knowledge
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#1a5c4c', 'primaryTextColor': '#334155', 'primaryBorderColor': '#1a5c4c', 'lineColor': '#475569', 'secondaryColor': '#f1ede7', 'tertiaryColor': '#f8f6f2', 'background': 'transparent', 'mainBkg': '#fff', 'nodeBorder': '#cbd5e1', 'clusterBkg': '#f1ede7', 'clusterBorder': '#cbd5e1', 'titleColor': '#1e293b', 'edgeLabelBackground': '#f8f6f2', 'nodeTextColor': '#1e293b' }, 'flowchart': { 'curve': 'basis', 'padding': 12 }}}%%
flowchart TD
    FT["Fintech"]:::external -->|REST API| API
    DEV["Desarrollador"]:::external -->|REST API| API

    subgraph AR ["Araucaria"]
        API["API Publica"]:::svc
        P["Portal"]:::svc
        SQL[("Cloud SQL")]:::infra
        PS["Pub/Sub"]:::infra
        API --> SQL
        API -->|publish| PS
        P --> SQL

        subgraph PRIV ["Red Privada — sin acceso publico"]
            W["Worker"]:::worker
            KMS["Cloud KMS"]:::kms
            W -->|decrypt| KMS
        end

        PS -->|subscribe| W
        W --> SQL
    end

    W -->|scraping| BANK["Instituciones"]:::bank

    classDef external fill:#f1f5f9,stroke:#94a3b8,color:#334155
    classDef svc fill:#1a5c4c,stroke:#15503f,color:#fff
    classDef worker fill:#1a5c4c,stroke:#15503f,color:#fff,stroke-width:2px
    classDef infra fill:#fff,stroke:#cbd5e1,color:#475569
    classDef kms fill:#7c2d12,stroke:#9a3412,color:#fff
    classDef bank fill:#1e3a5f,stroke:#1e40af,color:#fff
          

Tres servicios, tres cuentas, mínimo privilegio.

Cada componente de Araucaria corre con su propia cuenta de servicio en Google Cloud. Ningún servicio tiene más permisos de los que necesita.

api

API Pública

Recibe las solicitudes de los clientes y gestiona cuentas, transacciones y conexiones. No tiene acceso a Cloud KMS — no puede descifrar credenciales bancarias bajo ninguna circunstancia.

engineering

Worker

Ejecuta los jobs de scraping bancario. Es el único servicio con acceso a Cloud KMS para descifrar credenciales. Opera en una red aislada sin acceso público.

dashboard

Portal

Dashboard para clientes. Permite gestionar API keys y ver conexiones. No tiene acceso a KMS ni a Pub/Sub — solo lectura/escritura limitada a la base de datos.

Prácticas de seguridad.

Controles implementados en cada capa de la plataforma, desde la infraestructura hasta la aplicación.

shield

Seguridad de datos

  • Envelope encryption: cada credencial se cifra con una DEK única de 256 bits usando AES-256-GCM (cifrado autenticado)
  • La DEK se cifra con una clave maestra en Cloud KMS — nunca sale del hardware de Google
  • Zero-knowledge: nadie en Araucaria puede leer credenciales bancarias, solo el Worker con permisos KMS puede descifrar
  • API keys almacenadas como hashes SHA-256 — irrecuperables después de la creación
  • Contraseñas hasheadas con bcrypt (cost=12)
  • Datos cifrados en tránsito (TLS 1.2+) y en reposo (Cloud SQL encryption at rest)
admin_panel_settings

Control de acceso

  • Principio de mínimo privilegio: cada servicio tiene su propia cuenta IAM
  • Row-Level Security (RLS) en PostgreSQL para aislamiento multi-tenant
  • Solo el Worker puede descifrar credenciales — la API y el Portal no tienen acceso a KMS
  • Cookies de sesión con HttpOnly, Secure y SameSite
cloud

Seguridad de infraestructura

  • Desplegado en Google Cloud Platform (Cloud Run, Cloud SQL, Cloud KMS)
  • Worker aislado en red privada sin acceso público directo
  • Clave maestra gestionada por hardware de Google — nunca expuesta
  • Contenedores sin estado (stateless) con escalamiento automático
code

Seguridad de aplicación

  • Autenticación por API key con hash antes de almacenamiento
  • Validación de entrada en todos los endpoints de la API
  • Dependencias auditadas y actualizadas regularmente
  • Código revisado antes de merge a producción
lan

Seguridad de red

  • HTTPS obligatorio en todos los endpoints públicos
  • Comunicación interna entre servicios a través de canales seguros de GCP
  • Base de datos no expuesta a internet — solo accesible desde servicios autorizados
key

Gestión de secretos

  • Secretos inyectados como variables de entorno — nunca en código fuente
  • Claves de cifrado gestionadas por Cloud KMS con rotación automática
  • Credenciales bancarias protegidas con envelope encryption — zero-knowledge

¿Listo para construir algo increíble?

Únete a la comunidad de desarrolladores chilenos construyendo el futuro de las finanzas.