Bienvenido a la documentación de Vetro

Todo lo que necesitas para integrar Vetro, configurar reglas, usar el API REST y entender el proxy AST determinístico.

1 Descargar la imagen

Descarga la imagen del proxy de Vetro:

$ docker pull ghcr.io/vetro/vetro-proxy:latest

Siguiente: desplegar →

Primeros pasos

Por qué Vetro

AST · Parsing determinístico

¿Qué es AST y por qué es la mejor opción?

Vetro parsea cada query a su Árbol de Sintaxis Abstracta (AST) — la misma representación estructural que usa tu base de datos, vía libpg_query — en lugar de adivinar con expresiones regulares o heurísticas. Analiza la estructura de la sentencia, no su texto: por eso detecta lo que las listas de permitidos y los regex no ven.

  • Cero falsos positivos. Determinístico: el mismo query siempre produce el mismo veredicto. Sin modelos probabilísticos, sin varianza.
  • Ve lo que otros no. Multi-statement, CTEs data-modifying (WITH … DELETE), subqueries e inyección por tautología (OR 1=1) — todo sobre el AST completo, multi-dialecto.
  • Rendimiento insuperable. La evaluación ocurre in-process en el proxy TCP, sin llamadas de red en el hot path. P99 < 2 ms.

Interceptación en el protocolo wire de PostgreSQL

'P' Parse — prepared statements evaluados en la fase Parse, antes de bindear valores. Protección independiente de los parámetros en runtime. 'Q' Simple Query — la sentencia completa se evalúa inline antes de ejecutarse. El query destructivo nunca llega a la base.
Ver la arquitectura completa

Formas de conectar

Referencia

Seguridad y comunidad