A segurança é uma prioridade no ZapBeauty. Implementamos diversas camadas de proteção para garantir que seus dados e os dados dos seus clientes estejam protegidos.
Camadas de Proteção
Nossa infraestrutura é baseada em múltiplas camadas de segurança:
Criptografia
- SSL/TLS para dados em trânsito (certificados Let's Encrypt via Caddy)
- AES-256 para dados sensíveis em repouso (chaves de API, tokens OAuth)
- ASP.NET Data Protection API para gerenciamento de chaves
- Senhas armazenadas com hash seguro (nunca em texto plano)
Autenticação e Acesso
- JWT Bearer tokens de curta duração (30 min) + refresh tokens
- Controle de acesso baseado em função (Admin / Employee)
- OAuth 2.0 para integrações (Google Calendar)
- Isolamento multi-tenant no banco de dados
Proteção de Rede
- Caddy como reverse proxy com auto-SSL e HSTS
- Headers de segurança: X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy
- Rate limiting por endpoint (autenticação, webhooks, APIs públicas)
- Serviços internos (banco de dados, monitoramento) sem portas expostas
Monitoramento
- Prometheus + Grafana para métricas de aplicação e infraestrutura
- Loki + Promtail para centralização de logs
- Logs de auditoria para ações sensíveis (AuditLog)
- Alertas para eventos críticos via sistema de notificações
Infraestrutura
Hospedagem
A plataforma é hospedada em servidor VPS dedicado com as seguintes características:
- Servidor dedicado: VPS com 4 CPU, 16GB RAM, 200GB disco
- Sistema operacional: Ubuntu 24.04 LTS com atualizações de segurança
- Contêineres Docker: Serviços isolados em contêineres com rede interna
- Reverse proxy: Caddy com SSL automático (Let's Encrypt) para todos os domínios
- Banco de dados: PostgreSQL 16 sem porta externa exposta
Isolamento de Dados (Multi-Tenant)
- Cada empresa tem seus dados completamente isolados no banco de dados
- Filtros globais por empresa (company_id) aplicados automaticamente em todas as consultas
- Funcionários só acessam seus próprios dados (agendamentos, ganhos, agenda)
- Administradores veem apenas dados da sua empresa
Backup e Recuperação
- Banco de dados PostgreSQL com capacidade de backup
- Volume Docker persistente para chaves de criptografia
- Dados de criptografia protegidos em volume dedicado (/app/dataprotection-keys/)
Segurança da Aplicação
Desenvolvimento Seguro
- OWASP Top 10: Proteção contra as vulnerabilidades mais comuns (XSS, SQL Injection, CSRF)
- Validação de entrada: FluentValidation em todos os endpoints da API
- Queries parametrizadas: EF Core com prepared statements (prevenção de SQL Injection)
- Blazor auto-escape: Proteção contra XSS por padrão no frontend
- CORS configurado: Apenas origens específicas autorizadas
Proteção de Webhooks
- WhatsApp (Meta): Validação de assinatura X-Hub-Signature-256 em cada webhook
- Stripe: Verificação de assinatura de webhook para eventos de pagamento
- N8N: Autenticação via header secreto (X-N8N-Secret) por empresa
- Idempotência: Deduplicação de webhooks por message_id para evitar processamento duplicado
Rate Limiting
- Autenticação: 10 requisições/minuto (prevenção de força bruta)
- Webhooks WhatsApp: 100 requisições/minuto
- Endpoints públicos: 5 requisições/minuto
- Polling N8N: 30 requisições/minuto
Segurança de Credenciais
- Chaves de API de IA: Criptografadas com AES-256 em repouso, descriptografadas apenas em tempo de execução
- Tokens do Google Calendar: Criptografados com AES-256, armazenados de forma segura
- Tokens WhatsApp: Criptografados em repouso, nunca expostos em logs ou respostas de API
- Chave de criptografia: Mínimo de 32 caracteres, validada na inicialização
- JWT Secret: Mínimo de 32 caracteres, rejeita valores placeholder
- Dados de cartão: Nunca armazenados - processados diretamente pelo Stripe (PCI compliant)
Conformidade
Conformidade com a Lei Geral de Proteção de Dados (Lei 13.709/2018). Saiba mais
Pagamentos processados pelo Stripe, que é certificado PCI DSS Level 1. Não armazenamos dados de cartão.
Integrações com Google Calendar seguem o padrão OAuth 2.0 com escopos mínimos necessários.
Resposta a Incidentes
Plano de Resposta
Em caso de incidente de segurança, seguimos o seguinte processo:
- Detecção: Identificação do incidente via monitoramento ou relato
- Contenção: Isolamento da ameaça para evitar propagação
- Correção: Eliminação da vulnerabilidade e restauração do serviço
- Notificação: Comunicação aos usuários afetados e à ANPD conforme exigido pela LGPD
- Análise: Revisão do incidente e implementação de melhorias
Boas Práticas para Usuários
Recomendamos que nossos usuários também adotem boas práticas de segurança:
- Senha forte: Use senhas únicas e complexas para sua conta ZapBeauty
- Não compartilhe credenciais: Cada funcionário deve ter seu próprio login
- Revise acessos: Remova funcionários que não fazem mais parte da equipe
- Chaves de API: Use chaves dedicadas para o ZapBeauty (não reutilize chaves de outros serviços)
- Google Calendar: Revogue o acesso se não utilizar mais a integração
Reportar Problemas de Segurança
Se você identificar alguma vulnerabilidade ou problema de segurança, entre em contato:
E-mail: suportevendas@zapbeauty.net
WhatsApp: (24) 9 8100-4191
Prazo de Resposta: Até 24 horas úteis
Valorizamos relatos responsáveis de vulnerabilidades e nos comprometemos a investigar e corrigir problemas reportados.
Esta página reflete as práticas de segurança atualmente implementadas no ZapBeauty. Continuamos investindo em melhorias para manter seus dados sempre protegidos.