Usamos cookies essenciais para login e armazenamento local para suas preferências. Para métricas de uso, usamos o Google Analytics 4 — você pode recusar sem perder nada do produto. Saber mais

ThreadMineThreadMine
Voltar

Para times de segurança

Segurança

Construído pensando em devs e SREs que sobem dados sensíveis. Aqui está, em uma página, o que fazemos para proteger seus dumps e dados de cadastro — e o que ainda está no roadmap.

Esta página existe para responder, em poucas perguntas, se você pode aprovar o uso do ThreadMine no seu time. Cada seção descreve um controle que já está no ar ou um item explicitamente no roadmap. Não usamos linguagem aspiracional como controle pronto; quando algo não está implementado, isso está escrito.

Se faltar resposta sobre um controle específico, escreva para security@threadmine.dev — respondemos com o detalhe técnico necessário.

1. Visão geral da postura de segurança

O ThreadMine é um SaaS multi-tenant para análise de thread dumps JVM. A superfície de ataque que mais nos importa: (a) conteúdo dos dumps (pode conter trechos de classes internas e stack traces sensíveis), (b) credenciais de acesso, (c) chaves de API de fornecedores de IA. Os controles abaixo cobrem essas três categorias.

  • Transporte: TLS 1.3 obrigatório, HSTS habilitado, redirect HTTP para HTTPS.
  • Repouso: hash bcrypt para senhas e AES-256-GCM para segredos sensíveis em coluna (chaves de API, config de IA).
  • Acesso: JWT short-lived + refresh em cookie httpOnly, RBAC por workspace.
  • Auditoria: mudanças em entidades sensíveis registradas em log_alteracao com mascaramento automático de campos secretos.
  • IA: política explícita de não-treinamento com Anthropic e Google; admin pode desabilitar IA totalmente.

2. Criptografia em trânsito

TLS 1.3 obrigatório

Todo tráfego público (site e API) usa TLS 1.3 com certificados Let's Encrypt renovados automaticamente. Versões anteriores de TLS estão desativadas na origem.

HSTS habilitado em produção

Servimos o header Strict-Transport-Security commax-age de 1 ano e includeSubDomains. Navegadores recusam fallback para HTTP após a primeira visita.

Redirect HTTP para HTTPS

Qualquer requisição chegando em porta 80 é redirecionada com 301 para HTTPS antes de tocar a aplicação.

3. Criptografia em repouso

Os dados são protegidos em camadas, com algoritmos específicos por tipo de segredo:

  • Senhas de usuário: hash BCrypt com 10 rounds. Nunca armazenamos a senha em texto claro nem logamos senhas em qualquer etapa.
  • Chaves de API internas (workspace): criptografadas com AES-256-GCM via CifraUtil com chave gerenciada separada das credenciais do banco.
  • Chaves de API de provedores LLM: campo apiKeyCifrada da entidade ConfigLlm cifrado com AES-GCM. Só o serviço de IA decifra em memória no momento da chamada.
  • Banco de dados: Postgres em volume gerenciado. Criptografia em nível de disco e TDE em coluna estão no roadmap para o plano Enterprise.
  • Storage de dumps: no beta, dumps temporários ficam em storage gerenciado pela FELIPE MASCHIO TECHNOLOGY LTDA (volume dedicado). SSE-S3/SSE-KMS com chave do cliente estão no roadmap para o plano Enterprise.

4. Política de retenção

Dumps brutos são temporários

O conteúdo bruto do thread dump enviado por você é deletado após o processamento por default. Mantemos apenas o resultado de análise (metadados e problemas detectados), nunca o stack trace original além do TTL.

TTL dos dumps

Hoje, no beta, dumps brutos expiram em 7 dias para todos os planos. Retenção estendida por plano (Pro, Team, Enterprise) e TTL configurável por workspace estão no roadmap.

Job de cleanup automatizado

Job diário remove dumps expirados (entregue na S1.5). A remoção é hard-delete: não mantemos cópia lógica nem soft-delete dos arquivos brutos após o TTL.

5. Política de IA — dumps nunca viram dataset

Não usamos seus dumps para treinar nossos modelos. Nem damos a terceiros para isso. Não treinamos modelo próprio. Os subprocessadores que executam a inferência têm política contratual de não-treinamento:

  • Anthropic (Claude): política padrão de não usar entradas via API para treinamento de modelos.
  • Google (Gemini API): política padrão de não usar entradas via API paga para treinamento de modelos.

Caso um dos fornecedores mude essa política, deixaremos de enviá-los como opção no painel e migraremos para alternativa equivalente. O admin do workspace pode desabilitar completamente a análise por IA — nesse modo nenhum dado é enviado a fornecedor de LLM. Detalhes na Política de IA.

6. Audit log completo

Mudanças em entidades sensíveis

Alteracoes em Workspace, MembroWorkspace, ConviteWorkspace, ApiKey, Usuario e ConfigLlm são gravadas em log_alteracao com autor, timestamp e diff.

Mascaramento automático de segredos

Campos sensíveis — passwordHash, apiKey, secret, token — aparecem no snapshot como "***". O conteúdo real nunca é gravado no log.

Painel queryável para admins

O log é acessível em /admin/auditoria com filtros por entidade, autor e período. Retenção do audit log é ilimitada por padrão para compliance.

7. Autenticação e controle de acesso

JWT short-lived + refresh em cookie httpOnly

Access token JWT com validade de 15 minutos. Refresh token armazenado em cookie httpOnly Secure com validade de 30 dias. O frontend nunca acessa o refresh token via JavaScript — proteção contra XSS.

MFA via TOTP (roadmap)

Segundo fator por TOTP (compatível com Google Authenticator, Authy, 1Password e qualquer autenticador RFC 6238) está no roadmap — ainda não disponível no beta.

RBAC por workspace

Quatro papéis por workspace: Admin, Maintainer, Analyst e Viewer. Cada endpoint do backend valida papel antes de tocar o repositório. Recursos scoped por workspace têm filtro obrigatório de workspaceId na query.

Rate limiting global

Endpoints sensíveis (login, registro, reset de senha, upload) têm rate limit global aplicado via Redis (entregue na S1.12). Limites configuráveis em produção por endpoint.

Verificação de email obrigatória

Conta criada não consegue logar sem confirmar o email (entregue na S2.5). Link expira em 24h. Bloqueia contas farmadas com email descartável para abusar dos limites.

8. LGPD — direitos do titular

A LGPD (Art. 18) garante a você, como titular, os direitos abaixo. Todos são acionáveis self-service em /app/perfil/dados ou por email ao DPO:

  • Acesso: baixar cópia completa dos seus dados em JSON.
  • Correção: editar nome, email e demais campos pelo próprio perfil.
  • Portabilidade: export em formato aberto JSON para migrar a outro provedor.
  • Exclusão: deletar conta e dados associados; removemos em até 30 dias, exceto registros legais obrigatórios.

DPO da FELIPE MASCHIO TECHNOLOGY LTDA: dpo@threadmine.dev.

Política de cookies: usamos cookies essenciais (autenticação e preferências de interface) e o Google Analytics 4 (GA4) para métricas de uso e mensuração de campanhas. Sem GTM e sem pixels de marketing de terceiros além da nossa própria mensuração. Detalhes completos na Política de Privacidade.

9. Reportar vulnerabilidade

Encontrou algo? Mande email

Reporte vulnerabilidades para security@threadmine.dev. Respondemos em até 2 dias úteis com plano de remediação. Pedimos coordenação responsável de divulgação — 90 dias de janela antes de publicação.

Bug bounty em planejamento

Programa formal de bug bounty (HackerOne ou similar) está no roadmap pós GO LIVE. Até lá, reconhecemos publicamente reporters em changelog mediante consentimento.

10. Roadmap de compliance

SOC 2 Type II

Em planejamento para Q4 de 2026. Auditoria pré-fase já iniciada para mapear controles e gaps. Trust Services Criteria foco: Security e Confidentiality.

GDPR — DPA sob demanda

Para clientes na UE: DPA (Data Processing Agreement) disponível sob demanda em legal@threadmine.dev. Subprocessadores listados na Política de Privacidade.

HIPAA-ready

Avaliando demanda de clientes do setor de saúde. Sem BAA disponível hoje. Caso você tenha necessidade específica, escreva para legal@threadmine.dev.

11. Tem mais dúvidas?

Para perguntas sobre IA e tratamento de dumps, veja a Política de IA.

Para perguntas sobre dados pessoais, veja a Política de Privacidade.

Tudo mais que faltar: security@threadmine.dev.

Última atualização: 20 de maio de 2026