Security

Last updated 2026-05-14

Infrastructure

  • Hosted on Vercel (SOC 2 Type II) and Supabase (SOC 2, HIPAA, EU-West-1 region).
  • All traffic over TLS 1.2+.
  • Postgres at rest encryption (AES-256).
  • Row-level security on every user-data table; default deny.

Authentication

  • Magic-link email login via Supabase Auth. Tokens issued as JWTs; HTTP-only cookies.
  • Service-to-service auth via API keys. Keys are hashed (sha256) before storage; raw values are shown ONCE at issuance.
  • API keys are scoped (read / write / admin) and per-user rate-limited.
  • Webhook payloads are HMAC-SHA256 signed with a per-endpoint secret. We support a 5-minute replay window.

Secrets

  • All third-party credentials (Stripe, OpenAI, FMP, etc.) live as Vercel encrypted env vars and never appear in client-side bundles.
  • The Supabase service-role key is server-only by lint rule and naming convention.
  • We do not log secrets or PII into application logs.

Webhooks

  • Outbound webhooks blocked from RFC1918 / link-local destinations (SSRF guard).
  • HTTPS-only.
  • Manual redirect handling — we don't follow redirects to other hosts.

Reporting a vulnerability

Email security@intelligence-beryl.vercel.app with details. We respond within 48 hours.

Subprocessors

See the Privacy policy for the full list of third-party processors that handle user data.