Primeros pasos
Por qué Vetro
AST · Parsing determinístico
Ver la arquitectura completa
¿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.
Formas de conectar
Recomendado
Despliegue del proxy TCP
La forma recomendada: el proxy intercepta el protocolo wire de PostgreSQL. Protección transparente, sin cambios en tu código. Despliégalo como prefieras.
API HTTP para CI/CD
Evalúa queries y migraciones vía REST antes de desplegar, sin instalar el proxy. Ideal para validar cambios en tu pipeline.
Lenguajes y ORMs
Cualquier driver que hable el protocolo de PostgreSQL funciona sin cambios. Ejemplos para los ORMs y lenguajes más usados.
Referencia
Reglas AST
Catálogo completo de reglas VETRO-*: qué detectan, severidad, acción y dialectos soportados.
Ejemplos de queries
Casos reales lado a lado: qué se bloquea y por qué, qué pasa, y los casos edge más comunes.
Reglas personalizadas
Extiende el ruleset con condiciones YAML sobre el AST: esquema, tipos de nodo, condiciones, API y previsualización.
Seguridad y comunidad
Seguridad y cumplimiento
Arquitectura zero-trust, cifrado y almacenamiento, autenticación, compliance SOC2/ISO 27001 y reporte de vulnerabilidades.
Comunidad en Discord
Únete a la comunidad de Vetro: resuelve dudas, comparte reglas custom y recibe soporte de otros desarrolladores y del equipo.
¿Necesitas ayuda?
¿No encuentras lo que buscas o tienes un caso de uso que la documentación no cubre? Contáctanos por el canal adecuado.