Seguridad

Tu empresa vive aquí.
La seguridad no es opcional.

Cuando confías tu negocio a una plataforma, mereces saber exactamente cómo se protege. Esta página detalla cada capa que ya está activa en producción, qué herramientas usamos, y qué te prometemos.

Las 6 capas activas

Cómo te protegemos hoy

Capa 1vivo en prod

Cifrado de tokens de Gmail

Cuando conectas tu Gmail para que Chancho administre tus correos, generamos un token de acceso. Ese token vive cifrado en nuestra base de datos con AES-256-GCM. Aunque alguien accediera al almacenamiento, el token sigue siendo ilegible sin la llave de cifrado, que vive separada en variables de entorno protegidas.

AlgoritmoAES-256-GCM
Nonce12 bytes aleatorios por token
Auth Tag16 bytes
VersionadoPrefijo enc:v1: para rotación futura
Llave32 bytes, vive solo en env vars de Vercel
Capa 2vivo en prod

Autenticación en dos pasos (2FA)

Activable en Dashboard → Perfil → Seguridad. Genera un QR para Google Authenticator, Authy, 1Password o cualquier app TOTP. Si te roban la clave, el segundo factor mantiene tu cuenta cerrada. Puedes registrar hasta 10 factores y desactivarlos cuando quieras.

EstándarTOTP (RFC 6238)
ProviderSupabase MFA (max 10 factores)
Apps compatiblesGoogle Authenticator, Authy, 1Password, Bitwarden
RecuperaciónEmail de respaldo + códigos backup
Capa 3vivo en prod

Rate limiting distribuido

Cada endpoint público y autenticado tiene límites de uso. Si un bot intenta inundar tu cuenta, lo bloqueamos antes de que sume costo a tu plan o degrade tu experiencia. Usamos sliding window contra Upstash Redis, que funciona consistentemente en serverless (donde el rate limit en memoria fallaba).

BackendUpstash Redis sliding window
Visitor chat15 mensajes / minuto por IP
Custom dogs30 mensajes / minuto por usuario
Endpoints protegidos10+ rutas en producción
Capa 4vivo en prod

Row Level Security en Supabase

Cada tabla de tu información (empresa, conversaciones, tareas, modelo del usuario) tiene políticas Row Level Security activas. La base de datos misma rechaza queries que intenten leer data de otra cuenta, no dependemos solo del código de aplicación para evitar fugas entre usuarios.

ProviderSupabase Postgres con RLS forzado
Política baseuser_id = auth.uid() en cada tabla sensible
AuditoríaLogs Supabase para queries denegadas
Capa 5vivo en prod

Tu data NO entrena ningún modelo

La manada corre sobre Claude de Anthropic vía API. Esto significa que tus conversaciones, documentos y data privada no se usan para entrenar modelos comerciales. Anthropic mantiene logs internos máximo 30 días con fines de detección de abuso, y después se eliminan.

Proveedor IAAnthropic (Claude API)
PolíticaZero Data Training en API tier
RetenciónMáximo 30 días para detección de abuso, después eliminado
Cross-customerNinguna data se comparte entre cuentas
Capa 6vivo en prod

Auth con Google y email/password

Puedes entrar con tu cuenta de Google (OAuth 2.0) o crear cuenta con email y clave. Ambos métodos pasan por Supabase Auth con cookies httpOnly. Si te logueas primero con email y después con Google usando el mismo correo, las dos identidades se unifican automáticamente en una sola cuenta.

Providers activosGoogle OAuth 2.0 + email/password
SesionesCookies httpOnly + secure + SameSite=Lax
Identity linkingAutomático por email verificado
Anti-CSRFTokens PKCE en OAuth flow

Nuestras promesas

Lo que te garantizamos

Más allá de la tecnología, lo que te pedimos confiar es nuestra palabra.

Te avisamos antes de cualquier incidente

Si algo se rompe a nivel de seguridad, te lo decimos por email en menos de 24 horas con lo que pasó, a quién afectó y qué hacemos para arreglarlo. Cero excusas.

Puedes borrar tu data cuando quieras

Desde Dashboard → Perfil → Seguridad puedes pedir la baja de tu cuenta. Borramos tu información en 30 días (mantenemos respaldos cifrados por requisitos legales).

Nunca vendemos tu data

Ni a corredores de datos, ni a anunciantes, ni a socios. Si la fuente de ingresos de Koda son las suscripciones, no necesitamos vender nada más.

Preguntas frecuentes

Las dudas honestas que recibimos

Cuando conecto mi Gmail, Google me muestra una pantalla roja que dice "Google no ha verificado esta aplicación". ¿Es phishing? ¿Es seguro?+

No es phishing y sí es seguro. Esa pantalla la pone Google para CUALQUIER app que aún no completó CASA (Cloud Application Security Assessment), una auditoría de seguridad de terceros que cuesta entre USD 4.000 y USD 15.000 al año y toma de 1 a 3 meses. Hasta que Koda complete CASA, Google la marca con esa pantalla. Cuando lleguemos a 50+ usuarios pagados, vamos por CASA (decisión congelada por costo hasta tener tracción).

¿Y entonces cómo conecto mi Gmail de forma segura mientras tanto?+

El flujo OAuth no cambia por la pantalla roja: tu sesión va directo desde tu navegador a Google y vuelve a Koda con un token cifrado. Nuestros servidores nunca ven tu contraseña de Gmail. Para avanzar, haz click en "Configuración avanzada" y luego en "Ir a Koda (no seguro)": es el camino normal para una app en beta.

¿Y si entran a la base de datos de Koda?+

Los datos sensibles viven cifrados (tokens de Gmail con AES-256-GCM). Las claves de cifrado viven en variables de entorno separadas. RLS en Postgres bloquea reads cruzados entre usuarios. Pasar las tres capas requiere comprometer infraestructura de Supabase, Vercel y nuestras llaves al mismo tiempo, escenario que disparará el aviso por email en menos de 24 horas.

¿Pueden ver mis conversaciones con la manada?+

Técnicamente sí, alguien con acceso de admin a la base puede leer texto de conversaciones (esos no van cifrados, solo metadata sensible como tokens). En la práctica, solo el equipo de Koda tiene ese acceso, y lo usamos para revisar un problema cuando tú lo reportas. No miramos cuentas al azar.

¿Qué pasa si me roban la clave de Koda?+

Si activaste 2FA, no pueden entrar sin tu segundo factor. Si no la activaste, recomendamos hacerlo en Dashboard → Perfil → Seguridad. Si crees que ya entraron, escríbenos a hola@kodita.cl y cerramos sesiones forzosamente.

¿Cómo sé que Anthropic no usa mi data para entrenar?+

Está en su política comercial para clientes API: https://www.anthropic.com/legal/commercial-terms. Resumen: API tier (que es lo que usamos) tiene Zero Data Training por default. La retención son 30 días máximo y solo para abuse detection.

¿Por qué confiar en Koda si recién partimos?+

Honestidad: porque construimos esto con los estándares que querríamos en cualquier app donde vive nuestra propia empresa. Demian (el fundador) es el primer usuario real de Koda. Si algo falla, falla primero para él. No es un argumento perfecto, pero es el incentivo más alineado que podemos ofrecer.

¿Encontraste algo?

Si descubres una vulnerabilidad, te leemos en menos de 24 horas. Sin papeleo, sin retórica corporativa.

hola@kodita.cl