Saltar al contenido

Fundamentos de seguridad

¿Supabase es seguro? Sí. Tu proyecto es otra pregunta

¿Supabase es seguro? La plataforma está auditada, cifrada y sometida a pentests. Su propia documentación dice dónde termina eso y empiezan tus ajustes.

Vlad Tkachenko8 min de lectura
Un edificio de ventanas iluminadas con una hoja abierta en un piso alto, que deja un hueco oscuro en una fachada por lo demás cerrada.

En resumen

  • ¿Supabase es seguro? La plataforma sí: SOC 2 Type 2, ISO 27001, AES-256 en reposo, TLS en tránsito y pruebas de penetración periódicas.
  • La propia documentación SOC 2 de Supabase dice que ese cumplimiento termina en el borde de su producto. Tus tablas, tus claves y tus buckets de Storage quedan al otro lado de esa línea.
  • Escaneamos 30.998 apps en vivo en agosto de 2026. En 2.096 de las 3.680 que pudimos comprobar, una tabla respondió a un desconocido, sobre una plataforma que funcionaba tal y como se diseñó.

Alguien te dijo que Supabase no vale para datos reales de usuarios. Otro te dijo que está debajo de la mitad de las apps de las que has oído hablar este año. Los dos estaban seguros, y ninguno de los dos había abierto tu app.

Aquí está la parte que guía tras guía se equivoca: "¿Supabase es seguro?" y "¿mi proyecto de Supabase es seguro?" las responden dos personas distintas. Supabase responde la primera, y la responde bien. La segunda es tuya, te haya dicho alguien o no que te la habían pasado.

¿Supabase es seguro?

Sí. Auditores externos han examinado la plataforma, y sus certificaciones constan por escrito.

Supabase cumple SOC 2 Type 2 y está certificado en ISO 27001. Los datos de clientes se cifran en reposo con AES-256 y en tránsito con TLS. Hay una oferta HIPAA para datos de salud, que necesita un add-on y un acuerdo firmado. Hacen pruebas de penetración periódicas con expertos externos, y lo publican todo en su página de seguridad.

Piénsalo como un edificio. Los cimientos aguantan, las puertas cortafuegos funcionan, hay un guardia en la entrada, y en la pared cuelga un certificado de alguien que vino a revisarlo. Eso es de verdad lo que estás comprando.

Tu proyecto es un piso dentro de ese edificio.

¿Qué cubre en realidad ese certificado?

El edificio. Supabase escribe la frontera en una sola frase, en su propia documentación SOC 2:

El cumplimiento SOC 2 de Supabase no se transfiere a entornos fuera del producto Supabase o del control de Supabase.

La misma página añade que los datos del lado del cliente de esa frontera son responsabilidad del cliente, y su modelo de responsabilidad compartida detalla qué lado es cuál. Supabase lleva la infraestructura, el sistema operativo, las actualizaciones de Postgres y la monitorización de la plataforma. Tu lado tiene tu cuenta y quién accede a ella, tus datos, los secretos de tu base de datos y las claves de API, y Row Level Security, que esa misma página te recomienda aplicar siempre.

Ese último punto es todo este artículo. Row Level Security es la regla en cada tabla que dice quién puede leer qué filas. Está apagada hasta que alguien la enciende, y encenderla ocurre dentro de tu proyecto, en una página que quizá no has abierto nunca.

El muro exterior está revisado y certificado. La petición que llega a tus filas entró por un hueco del muro de dentro, que es el que dibuja tu proyecto.

El certificado es del edificio. Lo único que hace la plataforma con los pisos es señalar las puertas: el Security Advisor de tu panel nombra cada tabla con la regla apagada, y te deja a ti la decisión.

¿Entonces por qué tantas apps de Supabase filtran datos?

Porque todo lo que hay de tu lado de esa línea sigue funcionando perfectamente mientras está abierto de par en par.

En agosto de 2026 escaneamos 30.998 apps en vivo hechas con Lovable, Base44, Replit, v0 y Bolt. En 3.680 de ellas pudimos completar la comprobación que pregunta a una base de datos, sin ningún login, si va a entregar filas. 2.096 dijeron que sí en al menos una tabla. Storage contó la misma historia desde otro ángulo: de las 27.269 apps que pudimos comprobar, 792 tenían un bucket que un desconocido podía listar.

Nada de eso fue un fallo de Supabase. Cada una de esas respuestas salió de una base de datos parcheada y cifrada sobre una plataforma certificada, haciendo exactamente lo que su propio proyecto le había dicho. El edificio estaba bien. Las puertas de dentro estaban abiertas.

Pasa por el orden en que se construyen las cosas. Tu app funciona desde el primer día, y funciona con las reglas escritas o sin ellas, así que no hay un momento en que algo se rompa y te haga mirar. La medición completa explica cuánto de eso pudimos ver y cuánto no.

Si quieres la respuesta para tu propia app en vez de para la plataforma, nuestro escaneo gratis hace la misma petición anónima desde fuera y te dice cuáles de tus tablas respondieron. Unos 20 segundos, sin cuenta: escanea tu app.

¿Supabase es seguro para producción?

Sí, y lo que tienes que hacer al respecto es corto, porque Supabase ya hizo la mitad larga.

AsuntoQuién se ocupaQué significa para ti
Parches de servidor, actualizaciones de Postgres, SOSupabaseNada que hacer
Cifrado en reposo y en tránsitoSupabaseNada que hacer
Seguridad física, seguridad de red, pentestsSupabaseNada que hacer
Copias de tu base de datosSupabaseDiarias en plan de pago, y ninguna en el gratuito. Mira en cuál estás
Qué filas puede leer un visitanteUna política de Row Level Security en cada tabla con datos reales
Qué clave acabó dentro de tu appLa clave publicable va ahí. service_role y sb_secret_ nunca
Qué archivos puede listar un desconocidoEl interruptor público de cada bucket, separado de las reglas de tus tablas
Quién puede entrar en tu cuenta de SupabaseUna contraseña que no tenga nadie más, y doble factor en la cuenta

Cada fila de la mitad de abajo es un ajuste, y cada ajuste son unos minutos en un panel. La plataforma llega lista para producción. La configuración llega en el estado en que la dejó tu builder.

¿Cómo compruebo mi propio proyecto?

Tres sitios, y ninguno te pide leer una línea de SQL.

Abre el Security Advisor en tu panel de Supabase. Lista cada tabla con Row Level Security apagado, que es la versión más burda de este problema, y Supabase es bueno señalándolo. Un proyecto con esa lista vacía ha resuelto la primera pregunta.

Luego lee la política de cualquier tabla que guarde personas. El Advisor no puede decidir si una política permisiva fue a propósito, porque en un catálogo de productos sería lo correcto. Una tabla puede tener el interruptor puesto, una política válida y un tick verde en el panel, y aun así entregar sus filas a cualquiera que pregunte; los cuatro estados en los que puede estar una tabla explican cómo distinguir el tuyo.

Luego mira Storage. Los buckets tienen sus propios ajustes y las reglas de tus tablas no llegan hasta ahí, así que una base de datos bien cerrada no te dice nada sobre los archivos que subieron tus usuarios.

El muro de detrás lo revisa otro. Estos tres pomos están dentro de tu propio proyecto, y cada uno es una página de tu panel.

Hay una cuarta pregunta que el panel no puede responder: qué clave acabó realmente dentro de tu app. La página de ajustes lista las claves que tiene tu proyecto, y tu app es el único sitio donde consta cuál de ellas entró. Leer la clave en tu propia página en vivo es cosa de dos minutos, o nuestro escaneo gratis la lee por ti junto con todo lo anterior: escanea tu app.

Qué hacer ahora

Qué hacer

  • Deja de preguntar si Supabase es seguro. Lo es, con un informe SOC 2 Type 2, ISO 27001, cifrado AES-256 en reposo y pruebas de penetración periódicas detrás de la afirmación.
  • Lee la frontera en sus propias palabras. El cumplimiento cubre el producto Supabase, y tus políticas de Row Level Security, tus claves y tus buckets están de tu lado.
  • Abre el Security Advisor primero. Cuesta un minuto y responde la versión más burda de la pregunta.
  • Lee la política de cada tabla que guarde personas, porque una política permisiva se ve en el panel como una tabla protegida.
  • Comprueba Storage aparte de tus tablas. Los dos tienen ajustes distintos y una base de datos estricta no dice nada sobre tus archivos.

Si prefieres recorrerlo todo como una lista, el checklist de seguridad de 10 minutos cubre esto junto a los demás ajustes que conviene cerrar en una app recién lanzada, y hay una explicación en lenguaje llano para apps de Supabase.

Recorrer esa lista es una tarde, y la respuesta que te da es cierta la tarde en que lo haces. Mantenerla cierta es la parte que no cabe en una tarde, y para eso construimos Reeve Care: repite esas mismas comprobaciones sobre tu app según un calendario y te escribe cuando alguna empieza a responder distinto. Qué vigila y cuánto cuesta.

Reeve guarda una copia de tu base de datos de Supabase

Fuera de la cuenta de la que salió, según un calendario, y verificada antes de contar. La primera de esas tres es la que las copias del propio Supabase no pueden hacer por ti.

Supabase hace una copia diaria en plan de pago y ninguna en el gratuito, y en ambos casos esa copia vive dentro del proyecto del que se sacó. Es la herramienta correcta para la tarde en que rompes tus propios datos. Queda fuera de alcance el día en que el problema es la cuenta misma: un pago que falla, un borrado, un acceso al que ya nadie entra.

Reeve Care guarda una copia en otro sitio. Tomada según el calendario que marca tu plan, cifrada antes de salir de la máquina que la hizo, y releída y comprobada antes de que la contemos siquiera como copia, para que la fecha de tu panel sea la fecha en que se demostró que existía una copia y no la fecha en que arrancó un trabajo. Cubre tu base de datos de Supabase, y los archivos que subieron tus usuarios en cuanto los conectas.

Una restauración hace tres cosas alrededor de la reposición en sí. Comprueba que la copia todavía encaja en tu base de datos antes de devolver una sola fila, toma primero una instantánea de seguridad de lo que hay ahora, y demuestra después que la base de datos admite escritura escribiendo en ella, porque una restauración que te deja en solo lectura no ha terminado. También puedes descargar cualquier copia que tengamos y llevártela.

Cada comprobación de esta página te dice dónde está tu app hoy. Las copias son para el día en que algo ya ha salido mal. Qué copia Reeve en Supabase, con qué frecuencia, y qué hace una restauración.

Preguntas frecuentes

¿Supabase es lo bastante seguro para datos reales de clientes?

Sí. Supabase cumple SOC 2 Type 2 y está certificado en ISO 27001, cifra los datos de clientes en reposo con AES-256 y en tránsito con TLS, y hace pruebas de penetración periódicas. Lo que eso no te dice es si las reglas dentro de tu propio proyecto dejan que un desconocido lea tus tablas, porque ese ajuste pertenece a tu proyecto y no a la plataforma.

¿Supabase cumple SOC 2?

Sí, SOC 2 Type 2. Los clientes de Enterprise y Team pueden pedir el informe desde su panel. El alcance es el producto Supabase en sí: su infraestructura, sus controles, su monitorización.

¿El informe SOC 2 de Supabase cubre mi app?

No, y Supabase lo dice por escrito. Su documentación SOC 2 afirma que el cumplimiento no se transfiere a entornos fuera del producto Supabase o del control de Supabase, y que los datos del lado del cliente de esa frontera son responsabilidad del cliente. Tus políticas de Row Level Security, tus claves de API y tus ajustes de Storage están todos de tu lado.

¿Supabase es seguro para producción?

Sí, y el trabajo de tu lado es corto. Activa Row Level Security en cada tabla con datos reales y escribe una política que nombre una condición, mantén la clave secreta fuera de todo lo que descargan tus visitantes, y mira qué buckets de Storage están marcados como públicos. Esos tres ajustes deciden si un desconocido llega a tus datos, y son por donde empezamos cuando escaneamos una app.

¿Supabase cumple HIPAA?

Supabase ofrece cumplimiento HIPAA, y no viene activado solo. Requiere el add-on de HIPAA y un Business Associate Agreement firmado, y su documentación es explícita en que SOC 2 no lo sustituye. La información sanitaria protegida trae además reglas sobre dónde puedes ponerla, entre ellas la instrucción de no guardarla en buckets públicos de Storage.

¿Supabase es más seguro que montar mi propio backend?

En las partes que lleva Supabase, casi con seguridad. Parchear servidores, actualizar la base de datos, cifrar en reposo, la seguridad de red y un régimen de accesos auditado son cosas que rara vez hace igual de a fondo alguien que trabaja solo. Las partes que siguen siendo tuyas son las mismas en ambos casos, y con tu propio backend hay una más: el código entre tu app y tu base de datos.

Escrito por

Vlad Tkachenko

Fundador de Reeve

Me paso el día mirando apps creadas con Lovable, Bolt, v0, Cursor y Replit, y la corta lista de errores que aparecen en ellas una y otra vez.

Más sobre el autor

Sigue leyendo

Todos los artículos

¿No sabes cómo está tu propia app?

Haz un escaneo gratuito y obtén una nota clara de la A a la F en unos 20 segundos. Sin cuenta y sin tarjeta.

Analizar mi app gratis

Comprobación externa automatizada, no una auditoría completa. La ausencia de hallazgos no es garantía de seguridad.