Legal

Segurança

Atualizado em 08 de maio de 2026

Documento técnico — pra avaliações de TI corporativa, due diligence, ou se você só quer entender como protegemos seus dados.

Infraestrutura

  • Local físico: servidor em datacenter brasileiro (Porto Alegre/RS). Não usamos AWS, GCP, Azure ou qualquer cloud estrangeira pra dados de cliente.
  • Sistema operacional: Ubuntu LTS atualizado mensalmente
  • Web server: nginx com TLS 1.3 obrigatório, certificados Let's Encrypt renovados automaticamente
  • Aplicação: Node.js 20 + Next.js 15 standalone, gerenciada por PM2 com restart automático em caso de crash
  • Banco: PostgreSQL 16 local, sem exposição de porta pública (acesso só pelo servidor de aplicação)

Autenticação

  • Senhas: hash bcrypt com cost 12 (≈ 250ms por verificação — proteção contra brute-force). Texto puro nunca armazenado.
  • Sessões: better-auth com cookies HttpOnly + Secure + SameSite=Lax. Token não acessível via JavaScript.
  • 2FA: disponível em planos pagos via TOTP (Google Authenticator, Authy, etc.)
  • OAuth: integração com Google e GitHub usando fluxo OAuth 2.0 padrão
  • Reset de senha: email com token de uso único que expira em 1 hora
  • Rate-limit: 5 tentativas de login por IP por minuto

Isolamento de dados entre clientes

Cada usuário/empresa tem seus dados isolados em 3 camadas:

  1. Filtro de aplicação: queries geradas filtram por owner_id = $1 automaticamente
  2. Row-Level Security (RLS) no PostgreSQL: mesmo que um bug na aplicação tente acessar dado de outro usuário, o banco recusa via política RLS
  3. Schema dedicado por app: cada app gera tabelas com sufixo único (app_clientes_x7m2) — sem cross-contamination acidental entre apps

Criptografia

  • Em trânsito: TLS 1.3 obrigatório, HSTS habilitado com preload
  • Em repouso:
    • Senhas: bcrypt cost 12
    • Secrets de app (API keys que você cadastra em App Secrets): AES-256-GCM com key envelope rotacionada
    • API keys da Anthropic dos usuários: cifradas com BEADEV_SECRETS_KEY (formato iv:tag:ciphertext)
    • Backups: criptografados com chave separada antes de sair do servidor de produção

Backups

  • Frequência: diário, automatizado às 03h BRT
  • Retenção: 30 dias (rolling)
  • Local: storage separado do servidor primário, mesmo datacenter
  • Restore testado: mensalmente em ambiente de staging
  • RPO: 24h · RTO: 4h em desastre total

Logs e auditoria

  • Logs de acesso (data, hora, IP, user-agent, ação): retenção 6 meses
  • Audit log de ações sensíveis (mudança de permissões, deploy de app, alteração de configuração): disponível em Admin → Auditoria pra clientes Empresa
  • Logs de erro: retidos 90 dias, sem dados pessoais (mensagens são truncadas/hashadas)

Sandboxing dos apps gerados

Apps que você cria com o theo executam em ambiente isolado:

  • Iframe sandboxed (allow-scripts allow-same-origin allow-forms apenas)
  • CSP restritivo: scripts só de origens aprovadas
  • Banco do app só pode rodar SQL via API validada (whitelist de comandos: SELECT, INSERT, UPDATE, DELETE, CREATE TABLE)
  • Sem acesso a filesystem do servidor; uploads ficam em diretório dedicado por app

Resposta a incidentes

  • Detecção: alertas em logs (login bruteforce, erro 500 em massa, query lenta)
  • Notificação: em caso de breach que afete dados pessoais, comunicamos a ANPD em até 72h e os usuários afetados em até 7 dias
  • Status público: status.beadev.ai (em construção)

Conformidades e práticas

  • LGPD: em conformidade — ver detalhamento
  • OWASP Top 10: avaliados na rotina de desenvolvimento (input validation, parameterized queries, anti-CSRF tokens)
  • Dependências: auditoria semanal via npm audit e GitHub Dependabot
  • Secrets em código: bloqueados por pre-commit hook (gitleaks)

O que você pode fazer pra ajudar

  • Use senha forte (mínimo 12 caracteres, gerador recomendado)
  • Ative 2FA quando disponível pro seu plano
  • Compartilhe apps só com pessoas que precisam — revogue acesso quando alguém sair do time
  • Não cole API keys ou senhas em conteúdo de app — use App Secrets pra credenciais

Reportar vulnerabilidade

Achou algo? Mande pra contact@beadev.ai com o assunto “Vulnerabilidade”. A gente responde em até 24h. Vulnerabilidades críticas reportadas com responsabilidade recebem reconhecimento público (com sua autorização) e bonificação quando justificado.

Documentação adicional pra clientes Empresa

Pra clientes em processo de avaliação corporativa, podemos fornecer mediante NDA:

  • Diagrama de arquitetura detalhado
  • Política interna de gestão de acesso
  • Plano de continuidade de negócio (BCP)
  • Contratos de SLA customizados

Solicitação por formulário de contato ou email direto.

Segurança · theo