Ir al contenido

Auditoría de Seguridad

Pide a la IA que revise la postura de seguridad de tu app, sigue las buenas prácticas a continuación y guarda los secretos en la página Settings.

La seguridad en Proyecta se maneja con una combinación de configuraciones predeterminadas de la plataforma, revisiones impulsadas por IA y algunos hábitos que deberías adoptar. Así es como debes pensar al respecto.

Abre el Command Palette (Cmd+K / Ctrl+K) y selecciona Run Security Audit. Esto envía un prompt de seguridad exhaustivo a la IA, que lee todo tu código fuente y detecta vulnerabilidades con hallazgos priorizados y correcciones específicas.

La auditoría verifica:

  • Claves de API, tokens o contraseñas escritos directamente en el código fuente
  • Variables de entorno con prefijo VITE_ que filtran secretos al cliente
  • Falta de validación de entrada en el servidor en los endpoints de la API
  • Páginas o endpoints de la API sin autenticación
  • Contenido de usuario sin escapar (riesgos de XSS)
  • Vulnerabilidades en dependencias
  • Contenido mixto o URLs con http:// escritas directamente en el código
  • Falta de validación en la carga de archivos

También puedes ejecutar una auditoría de seguridad manualmente desde el chat, o enfocarte en un área específica:

  • "Review my checkout flow for security issues"
  • "Check the admin pages — who can access what?"
  • "Look at every endpoint that writes to the database and tell me if any of them are missing authorization"

Mantén los secretos seguros

  • Guarda cada clave de API, credencial de base de datos y token de terceros en la sección Variables de Entorno de la página Settings
  • Nunca pegues secretos en mensajes del chat ni los incluyas en el código
  • Si un secreto queda expuesto, revócalo con el proveedor externo de inmediato y crea uno nuevo

Limita el acceso

  • Implementa permisos basados en roles en tu app ("Add admin and member roles. Only admins can access /admin pages.")
  • Restringe las páginas y endpoints sensibles a usuarios autenticados
  • Siempre valida la entrada del usuario en el servidor, nunca solo en el cliente

Usa HTTPS en todas partes

  • Todas las apps publicadas en Proyecta se sirven sobre HTTPS automáticamente
  • Los certificados SSL se provisionan y renuevan por ti
  • Para dominios personalizados, aplica lo mismo una vez que el DNS esté configurado correctamente

Mantén las dependencias actualizadas

  • Pregúntale a la IA periódicamente: "Check my dependencies for known security vulnerabilities and upgrade the vulnerable ones."
  • Revisa los cambios que hace la IA — las actualizaciones de dependencias a veces incluyen cambios que rompen la compatibilidad

Haz auditorías después de cambios importantes

  • Vuelve a ejecutar una auditoría después de agregar autenticación, pagos, carga de archivos o cualquier cosa que toque datos de usuarios
  • Antes de publicar en producción por primera vez, realiza una revisión completa
  • HTTPS y certificados para tu subdominio *.proyecta.live
  • Variables de entorno — los secretos se almacenan en un almacén dedicado y se sincronizan con el backend de tu app (Convex), sin quedar guardados en tu código. Nota: los secretos son visibles para los miembros del workspace con acceso al proyecto.
  • Runtimes aislados — cada proyecto corre en su propio contenedor, por lo que los problemas del entorno de desarrollo no afectan a otros usuarios
  • Ejecuta una auditoría antes de tu primera publicación — una revisión completa detecta problemas antes de que salgan en vivo.
  • Vuelve a ejecutar después de cambios importantes — agregar autenticación, pagos o carga de archivos introduce nuevas superficies de ataque.
  • Enfoca el alcance — las auditorías sobre áreas específicas son más rápidas y exhaustivas que las revisiones de toda la app.