Security

Security at Veto

Security is foundational to an authorization platform. Veto processes tool-call authorization decisions for AI agents — the integrity and confidentiality of that pipeline is our primary engineering concern.

Infrastructure

  • Cloud provider: Google Cloud Platform (GCP), us-central1 region
  • Compute: Cloud Run (managed, auto-scaling, sandboxed containers)
  • Database: Convex (managed, with automatic backups and point-in-time recovery)
  • DNS and edge: Cloudflare (DDoS protection, DNS management)
  • Secret management: GCP Secret Manager for all production credentials and encryption keys

Encryption

  • In transit: TLS 1.2+ enforced on all service endpoints. HSTS enabled. No plaintext connections accepted.
  • At rest: All database storage and backups encrypted using provider-managed keys. Sensitive customer configuration (MCP upstream headers) additionally encrypted at the application layer before storage.
  • API keys: Stored as one-way hashes. Full key value is shown once at creation and never stored or retrievable.

Authentication and Access Control

  • Customer auth: JWT-based with 30-day session expiry. Email/password with verification, plus GitHub and Google OAuth. Session tokens are scoped to the issuing auth service.
  • API auth: Project-scoped API keys with bearer token authentication. Keys are hashed at rest and can be regenerated at any time.
  • Multi-tenancy: Organization and project isolation enforced at the database and API layers. Cross-tenant data access is architecturally prevented.
  • Internal access: Principle of least privilege. Production infrastructure access limited to essential personnel with named accounts.

Application Security

  • Input validation with Zod schemas on all API endpoints
  • Rate limiting and abuse controls at the API gateway layer
  • Structured logging with PII filtering in production logs
  • CORS, CSP, and standard security headers configured
  • Dependency vulnerability scanning in CI/CD pipeline
  • No customer data in error messages or debug output

Data Handling

  • Customer Data (tool-call payloads, policies, decisions) is processed only to deliver the Services. We do not use it to train models.
  • Decision log retention is tiered: 7 days (Free), 30 days (Team), 90 days (Business), enterprise-configurable. Data is purged after retention expires.
  • On account termination, Customer Data is available for export for 30 days, then deleted from production within 90 days and backups within 180 days.
  • Analytics data (PostHog) is collected only with explicit cookie consent and configured with aggressive PII masking.

Incident Response

We maintain a documented incident response plan covering detection, containment, eradication, recovery, and post-incident review. In the event of a data breach affecting customer data:

  • Affected customers are notified within 72 hours of confirmed breach (per GDPR Article 33)
  • Notification includes nature, scope, likely impact, and remediation steps
  • Post-incident review and corrective actions are documented

Compliance Roadmap

SOC 2 Type I

In progress. Our security program is built against the SOC 2 Trust Services Criteria (Security). We are actively working toward completing the Type I audit.

GDPR

Compliant. Data Processing Addendum available. Standard Contractual Clauses for international transfers. Consent-gated analytics. Sub-processor transparency.

CCPA/CPRA

Compliant. No sale or sharing of personal information. Privacy rights honoring. Service provider contractual commitments.

EU AI Act

Veto is classified as limited/minimal risk infrastructure. We provide transparency tooling (audit logs, decision explanations, override capabilities) to support customers' deployer obligations. See our EU AI Act compliance page.

Responsible Disclosure

If you discover a security vulnerability in Veto, please report it responsibly:

  • Email security@veto.so with details of the vulnerability
  • Include steps to reproduce, affected endpoints, and potential impact
  • We will acknowledge receipt within 48 hours and provide an initial assessment within 5 business days
  • Do not publicly disclose the vulnerability until we have had reasonable time to address it

Questions

For security questionnaires, vendor assessments, or compliance questions, contact security@veto.so.