Every table that holds portfolio data, uploaded documents, or Family Office inquiries has row-level security enforced by the database itself — not application code alone. A signed-in session can only ever read or write its own rows; that’s a database-level guarantee, not something a bug in the app could accidentally bypass.
What’s in place
- Row-level security on every table holding portfolio, document, or inquiry data — enforced by Postgres itself.
- Uploaded documents (leases, appraisals, tax records, loan paperwork) live in a private storage bucket with no public URL. Every download requires a short-lived signed link issued to the file’s owner.
- Profile fields that control tier, billing, or verification status can’t be changed by a signed-in client directly — those writes are server-only.
- All traffic is encrypted in transit (HTTPS).
- Hosted on Supabase (Postgres, on AWS infrastructure) and Vercel.
The site itself carries the standard hardening headers: HSTS with preload (a browser that has loaded Fundamento once will refuse to load it over plain HTTP again, on any network), a restrictive Content-Security-Policy that limits which scripts and domains can run on the page at all, X-Frame-Options set to deny so the site can't be embedded in someone else's iframe, and a Permissions-Policy that blocks camera, microphone, and geolocation access outright — nothing on Fundamento asks for any of them.
Card numbers never reach Fundamento's servers: checkout runs through Stripe's own hosted forms, so a card number is typed directly into Stripe, not into anything we control. Sign-in credentials work the same way — Supabase Auth manages passwords and issues session tokens, and Fundamento's own database never stores a password, hashed or otherwise.
What we don’t have yet: a completed third-party audit, such as SOC 2. It’s on the roadmap — ask us for current status and a target timeline.
Found a security issue? Write to hello@getfundamento.com — we read every report, and we’d rather hear from you first.
Cada tabla que guarda datos de portafolio, documentos subidos o consultas de Family Office tiene seguridad a nivel de fila aplicada por la base de datos misma — no solo por el código de la aplicación. Una sesión iniciada solo puede leer o escribir sus propias filas; es una garantía a nivel de base de datos, no algo que un error en la aplicación pudiera saltarse por accidente.
Qué protege tus datos hoy
- Seguridad a nivel de fila en cada tabla que guarda datos de portafolio, documentos o consultas — aplicada por Postgres mismo.
- Los documentos que subes (contratos de arrendamiento, avalúos, registros fiscales, papeles de préstamo) viven en un bucket de almacenamiento privado, sin URL pública. Cada descarga requiere un enlace firmado de corta duración, emitido solo para el dueño del archivo.
- Los campos de tu perfil que controlan el plan, la facturación o el estado de verificación no se pueden cambiar directamente desde el cliente — esas escrituras son exclusivas del servidor.
- Todo el tráfico va cifrado en tránsito (HTTPS).
- Alojado en Supabase (Postgres, sobre infraestructura de AWS) y Vercel.
El sitio en sí lleva las cabeceras de endurecimiento estándar: HSTS con preload (un navegador que ya cargó Fundamento una vez se niega a cargarlo por HTTP simple otra vez, en cualquier red), una Content-Security-Policy restrictiva que limita qué scripts y dominios pueden correr en la página, X-Frame-Options en modo denegar para que nadie pueda incrustar el sitio en un iframe ajeno, y una Permissions-Policy que bloquea de plano el acceso a cámara, micrófono y ubicación — nada en Fundamento los pide.
Los números de tarjeta nunca llegan a los servidores de Fundamento: el checkout corre sobre los formularios propios y alojados de Stripe, así que un número de tarjeta se escribe directamente en Stripe, no en algo que nosotros controlemos. Las credenciales de inicio de sesión funcionan igual — Supabase Auth administra las contraseñas y emite los tokens de sesión, y la base de datos propia de Fundamento nunca guarda una contraseña, ni siquiera cifrada.
Lo que todavía no tenemos: una auditoría externa completa, como SOC 2. Está en el roadmap — pregúntanos por el estado actual y la fecha objetivo.
¿Encontraste un problema de seguridad? Escríbenos a hello@getfundamento.com — leemos cada reporte, y preferimos que nos avises tú primero.