Skip to content

Segurança — Visão Geral

Superfície de ataque

O sistema tem três tipos de endpoints:

TipoAutenticaçãoExemplos
AutenticadoJWT ClerkMaioria dos endpoints de negócio
PúblicoNenhuma (ou validação específica)Webhooks, pesquisas, redirect, email tracking
InternoInternal API KeyEndpoints n8n, sync ERP

Camadas de defesa

Internet
  └─ Traefik (TLS, roteamento)
      └─ Backend NestJS
          ├─ CORS (FRONTEND_URL)
          ├─ ClerkAuthGuard (JWT validation)
          ├─ TenantInterceptor (isolamento de org)
          ├─ PermissionsGuard (RBAC)
          ├─ ReadOnlyGuard (mutações)
          ├─ UserThrottlerGuard (rate limit)
          └─ AuditInterceptor (log de ações)

Dados sensíveis no sistema

DadoOndeProteção
Senhas SMTPOrganizationSmtpSettings.passAES-256-GCM criptografado
Tokens WhatsAppStoreWhatsappNumber.accessTokenAES-256-GCM criptografado
App Secret MetaStoreWhatsappNumber.appSecretAES-256-GCM criptografado
CPFCustomer.cpfHashSHA-256 (irreversível)
CPF displayCustomer.cpfMasked***.***.*XX-**
Clerk Secret KeyAmbiente / Azure Key VaultNunca no banco
Internal API KeyAmbiente / Azure Key VaultNunca no banco
Master Encryption KeyAmbiente / Azure Key VaultNunca no banco

O que nunca logar

  • Tokens de autenticação (Clerk JWT, API keys)
  • Senhas (SMTP, Redis)
  • CPF em texto puro
  • Números de cartão ou dados financeiros completos
  • Chaves de criptografia

O middleware HTTP mascara automaticamente IPs e pseudonimiza userIds nos logs.

Índice desta seção