Segurança do ERP: a revisão honesta antes de ir para produção
Uma leitura sem maquiagem do que está resolvido e do que exige decisão consciente antes de abrir o painel para um público amplo.

A conversa mais desconfortável que eu já tive sobre segurança do ERP começou com uma pergunta simples de um cliente: o que está protegido e o que não está. Eu respondi que estava tudo certo, porque era o que eu queria acreditar. Depois fui ler a documentação com calma e descobri que ela era muito mais honesta do que eu: além da lista de recursos confirmados, havia uma lista de limites conhecidos, escrita sem maquiagem. Foi essa segunda lista que mudou o meu jeito de trabalhar.
Este texto acompanha essa honestidade. Não é uma promessa de ambiente inviolável, é um mapa do que já está resolvido, do que exige decisão consciente e do que precisa ser conferido no ambiente antes de expor o painel para um público amplo.
O que a documentação lista como confirmado
- Sessão de login como base do acesso.
- Controle legado por controller e função, mais a camada de perfis por empresa, sistema e menu quando o schema correspondente está instalado.
- Bloqueios em rotas administrativas sensíveis.
- API de CRM protegida por filtro próprio, com tokens que têm status, expiração, escopos, limite de requisições e auditoria.
- Webhook do hub de mensageria para o ERP assinado com HMAC SHA-256.
- Mídias de chat servidas por URL assinada.
- Chat com Dados limitado a leitura e isolado pela identificação da empresa.
- Webhooks de pagamento reconfirmando estados financeiros críticos no provedor.
Repare no padrão dessa lista: quase tudo depende de uma configuração estar feita ou de um schema estar instalado. Recurso existir e recurso estar ativo no seu ambiente são coisas diferentes, e essa distinção é o coração de qualquer revisão séria.
Segurança do ERP: os limites que exigem decisão consciente
A documentação registra que o roteamento automático permanece habilitado no ERP principal e que as proteções globais de CSRF e honeypot estão comentadas no filtro principal, com a loja aplicando CSRF apenas a rotas selecionadas de autenticação. Registra também que um dos filtros valida a sessão, mas está com o bloqueio adicional por permissão temporariamente comentado no código atual.
Do lado das integrações, há pontos igualmente explícitos: a API interna do hub de pagamentos só exige autenticação por token quando esse token está configurado, e assinaturas HMAC opcionais só protegem o fluxo quando os respectivos segredos foram definidos. No módulo de marketplaces, o webhook genérico não tem validação de assinatura implementada e grava o registro como assinatura não validada.
Pontos que pedem atenção antes de abrir para fora
| Ponto registrado | Por que importa | O que fazer antes |
|---|---|---|
| Webhook de marketplaces sem validação de assinatura | Aceita chamada sem comprovação de origem | Mitigar ou restringir a exposição do endereço |
| Painel de logs com eventos sem empresa resolvida | Pode expor payload ou dado pessoal entre empresas com acesso ao módulo | Restringir quem enxerga esse painel |
| Repetição de requisição com verificação SSL desabilitada | Enfraquece a garantia de destino da chamada | Avaliar antes de uso produtivo amplo |
| Rotas mutáveis aceitando GET com CSRF global desabilitado | Ação sensível disparável por navegação | Tratar antes de expor o ambiente |
| Worker experimental aceitando requisição sem token | Acesso sem autenticação quando o token está vazio | Exigir HTTPS, token forte e rede restrita |
A própria documentação diz que esses pontos devem ser corrigidos ou mitigados antes de uma exposição produtiva ampla, e registra que o worker experimental não está pronto para produção. Repetir isso aqui não é pessimismo. É a diferença entre uma decisão consciente e uma surpresa.
Os cuidados que valem para qualquer ambiente
Existe uma lista de cuidados operacionais documentados que independe de configuração e de módulo. Não expor o arquivo de ambiente. Não deixar ferramenta de depuração ativa em produção. Não executar alteração de estrutura direto no banco sem plano e script. Manter o isolamento por empresa. Validar callbacks e tokens de integração. São hábitos, e hábito é a única defesa que continua funcionando quando ninguém está olhando.
Aprendi do jeito difícil que o item do isolamento por empresa é o que mais depende de disciplina de configuração. Ele é sustentado por camadas técnicas, mas uma credencial compartilhada entre unidades derruba tudo isso sem nenhum esforço. A lógica está em controle multiempresa no ERP e o desenho de acesso em estruturação de perfis de acesso.
Uma revisão que cabe numa manhã
- Liste quem tem Acesso TotalNominalmente. Se o número cresceu desde a última revisão, alguém está usando o atalho para resolver pressa.
- Cruze usuários ativos com quem trabalha aquiConta de pessoa desligada é o achado mais comum de todos, e o mais fácil de corrigir.
- Confira as integrações ativasQuais existem, quais têm segredo configurado e quais estão apenas presentes no código.
- Verifique quem enxerga painéis sensíveisLogs, área administrativa e telas de credencial não pertencem a perfil de rotina diária.
- Anote as decisões conscientesO que você escolheu não mitigar agora precisa estar escrito, com motivo e data de revisão.
Antes de expor o painel a um público amplo
- Os limites conhecidos foram lidos e discutidos com quem responde pelo ambiente.
- As integrações que oferecem assinatura estão com os segredos configurados.
- O acesso a painéis de log e telas administrativas está restrito.
- Nenhuma credencial é compartilhada entre pessoas ou entre empresas.
- Os cuidados operacionais documentados viraram hábito, e não lembrete.
- A próxima revisão tem data e responsável.
Os pré-requisitos técnicos que sustentam essa conversa estão em checklist de implantação do ERP, e os padrões de configuração que mais geram brecha em erros comuns na configuração de permissões. Se o seu ambiente conversa com canais externos, inclua na revisão as credenciais administradas em marketplaces, que costumam ficar de fora da conversa sobre acesso interno e são exatamente a ponte entre o seu ambiente e o mundo.