Segurança Tokia
Como protegemos seus dados, keys, conversas e saldo BRL. Complementa /privacy e /docs/lgpd.
Encryption
In transit
- TLS 1.3 obrigatório em todos endpoints públicos (www/api/chat.usetokia.com)
- Certificados TLS renovados automaticamente
- HSTS habilitado (browsers forçam HTTPS após primeira visita)
At rest
- Banco de dados: disco encriptado em servidores próprios no Brasil
- Segredos e credenciais (API keys, URLs de banco): encriptados
- API keys clientes (sk-...): SHA-256 hash. Plaintext NUNCA persiste, após criar, aparece 1x na UI/response e some
- Tokia Chat: API key do usuário (informada por você) encriptada com AES-GCM usando chave de servidor
- Webhooks signing keys: HMAC SHA-256 com secret armazenado em DB encrypted at rest
Access control
- User-side: JWT via cookie SSR (web) ou Bearer (API), com validação de assinatura
- Admin endpoints: protegidos por guard de admin, escopo
tokia:adminOU allowlist de email - Operações internas: autenticação máquina-a-máquina dedicada
- IP allowlist por API key: opcional, configurável em
/dashboard/keys. Rate limit 120 req/min default
Audit trail
- Admin actions: todas registradas com email do admin + IP + timestamp. Visível em
/dashboard/admin/audit-log - Balance adjustments: registro dedicado com motivo + admin
- Tarefas agendadas: cada execução registrada com status + duração + erro
- Request log: todas as requests com request_id + identificador de usuário (sem PII de body)
Backups
- Schedule: diário às 03h BRT (06h UTC), automatizado
- Scope: dump completo dos dados da Tokia
- Retention: 30 dias rolling, gzip
- RTO target: 4h (recuperar último backup + replay logs)
- RPO target: 24h (perde até 1 dia, aceitável V1)
- Smoke restore: 1x/mês em banco temporário
Anti-abuso
- Hard cap saldo: sem saldo BRL → todas as API keys do usuário são suspensas. Previne débito explosão se modelo bugar.
- Rate limit per-API-key: 120 req/min default, override por cliente Enterprise
- Auto top-up cap: max 3 recargas automáticas em 24h. Se 3 falham seguidas, desliga e manda email
- Banimento por violações no Tokia Chat: ban de 24h após 20 violações
- Cost spike detector:alerta admin se gasto do usuário > 3× a média de 7 dias
Incident response runbook
Severity levels
- P0 (critical):serviço inacessível pra >50% dos users (api down, chat down). Alerta sub-1min.
- P1 (major): funcionalidade chave degradada (1 modelo retornando 500, billing parado). Alerta sub-5min.
- P2 (minor): bug visível mas workaround disponível. Alerta horário comercial.
Quando alerta dispara
- Acknowledge em até 15min (P0) / 1h (P1) / 1d (P2). Posta no /status como "Investigating"
- Mitigate: rollback último commit OU restart container OU isolar tráfego problemático
- Communicate: update /status a cada 30min (P0) / 2h (P1). Email pros afetados se >50 users
- Resolve: marca /status como "Resolved" quando smoke verde
- Postmortem (RCA): 1 doc em até 7d com timeline, root cause, action items. Publicado em
/status/<incident_id>
Contatos emergência
- Tech lead: Inael, inael.rodrigues@gmail.com (acionar pra P0 fora do horário)
- DPO: suporte@usetokia.com.br (acionar se houver vazamento de dados, Art. 48 LGPD: 2 dias úteis ANPD)
- Status pública: /status + RSS Atom
Sub-processadores (vendor risk)
Cada sub-processador avaliado pelo IT Booster antes de inclusão. /docs/lgpd seção "Sub-processadores" tem lista completa + localização + finalidade.
DPAs (Data Processing Agreements) em processo de formalização:
- Processador de pagamentos, SOC2 Type 2 certificado (BR pioneer)
- Provedores de IA (texto), SOC2 + GDPR-compliant
- Provedor de IA (imagem/vídeo), SOC2 Type 1
- Google AI Studio, SOC2 + ISO 27001
Compliance status
- LGPD nativo, full compliance (/docs/lgpd)
- ⏸️ SOC2 Type 2, em preparação. Target Q4 2026 Type 1, Q2 2027 Type 2
- ⏸️ ISO 27001, backlog, considerar se cliente enterprise pedir
Última atualização: 2026-05-20.