Confiança é o produto inteiro. Tratamos segurança como preocupação de engenharia de primeira classe, não como checklist. Esta página descreve os controles em vigor hoje, o que estamos construindo, e como reportar uma vulnerabilidade.
Arquitetura e isolamento de dados
- Multi-tenant por design. Toda tabela com dado de cliente tem coluna
organization_id. Todas as queries filtram por organização no servidor; não há como o tenant A ler dados do tenant B. - Hierarquia de papéis forte. Roles:
agent<approver<admin<superadmin. Mass-assignment é bloqueado na API; papéis inferiores não conseguem se promover. - Painel de operador isolado. O painel
/superadminé protegido por role + 2FA + IP allowlist + rate-limit + 404-on-deny (devolve 404 em vez de 403 pra esconder existência de scanners).
Autenticação
- Senhas com hash bcrypt (cost 12).
- 2FA TOTP obrigatório para o role
superadmin. 8 códigos de recuperação de uso único gerados no enrolamento. - Lockout de força bruta: 8 tentativas falhas → bloqueio de 15 minutos por IP.
- JWTs assinados com segredo de 256 bits. Access tokens expiram em 60 minutos; refresh tokens em 30 dias. Todos os tokens carregam claim
totp_verifiedpara rotas sensíveis. Reuse-detection ativa em refresh tokens (todos os tokens de uma sessão são revogados se algum for reutilizado).
Rede e infraestrutura
- TLS 1.2+ em todo lugar (HSTS preload, sem HTTP em texto puro).
- Proteção DDoS em camadas: iptables no kernel → rate-limit no Apache → contador de abuso no backend (Redis) → padrões Fail2Ban.
- Banco de dados: criptografado em repouso (AES-256), backup diário com retenção de 30 dias. Acesso de produção só por IP allowlist.
- Segredos: gerenciados via UI
/superadmin; valores mascarados em respostas da API (apenas últimos 4 caracteres). - Isolamento de containers: cada componente (Postgres, Redis, backend, frontend, worker) roda em container Docker próprio sem privilégios de host.
Segurança da aplicação
- Validação de input via Pydantic (backend) e Zod (frontend).
- SQL exclusivamente via SQLAlchemy ORM com queries parametrizadas — sem concatenação de string crua.
- CORS restrito ao domínio da aplicação.
- Headers CSP, X-Frame-Options, X-Content-Type-Options, Strict-Transport-Security configurados.
- Audit log de toda ação privilegiada: ator, IP, recurso, timestamp.
- Scanning de dependências: revisão mensal de CVEs em pip + npm.
IA e dados de clientes
- Conteúdo de mensagens dos clientes só é enviado ao provedor de IA quando necessário pra rascunhar uma resposta.
- Provedores de IA (Anthropic, Google Gemini, Groq) não usam o conteúdo da API pra treinar modelos, conforme termos de serviço deles.
- IA pode ser desativada por inbox ou por ticket.
- Clientes do plano Scale podem trazer a própria chave de IA (BYOK) — nesse modo, a relação com o provedor é direta entre você e o provedor.
- Não compartilhamos dados de clientes com terceiros para uso próprio deles.
- Conforme EU AI Act (Art. 50), em vigor a partir de 02/08/2026, anexamos footer discreto identificando que a resposta foi assistida por IA quando enviada ao consumidor final. Pode ser desativado por organização sob responsabilidade do cliente B2B.
Conformidade
- GDPR (UE): conforme. DPA disponível sob solicitação.
- LGPD (Brasil): conforme.
- CCPA (Califórnia): conforme.
- EU AI Act: transparência implementada (Art. 50, vigente 02/08/2026).
- SOC 2 Type I: roadmap (alvo Q3 2026).
- SOC 2 Type II: roadmap (alvo Q1 2027).
- ISO 27001: sob avaliação.
Para DPAs e lista detalhada de sub-processadores, veja nossa Política de Privacidade ou contate security@sakuracrm.cloud.
Resposta a incidentes
Notificaremos os clientes afetados de qualquer vazamento de dados confirmado em até 72 horas da descoberta, em conformidade com GDPR Art. 33. Histórico público de incidentes e status atual em /status.
Reportando vulnerabilidades
Recebemos relatórios de pesquisadores de segurança via disclosure responsável. Por favor envie e-mail para security@sakuracrm.cloud com:
- Descrição clara do problema.
- Passos para reproduzir.
- Sugestão de correção ou mitigação.
Comprometemo-nos a confirmar relatórios válidos em até 48 horas e corrigir questões críticas em até 7 dias. Não oferecemos atualmente bug bounty pago, mas creditamos publicamente os disclosures (com seu consentimento).
Fora de escopo: engenharia social, ataques físicos, ataques de negação de serviço, ataques que exigem acesso privilegiado já dentro da rede.
Contato
Time de segurança: security@sakuracrm.cloud