Voltar para a home

Segurança no Sakura

Última atualização:

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 colunaorganization_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