Blog / segurança
O que eu revisei antes de colocar o Radar no ar
Seis decisões de segurança, o custo de cada uma e o erro que o pipeline encontrou antes de mim.
Eduardo Ciudad
9 de novembro de 2026 · 2 min de leitura
EM 30 SEGUNDOS
- 1Segurança troca conveniência por controle. Cada decisão aqui vem com o que custou.
- 2O pipeline encontrou testes que nunca tinham rodado. Foi o achado mais útil do dia.
- 3Publicar o novo me fez fechar portas que os projetos antigos deixavam abertas.
01
O contexto
Por que separar um dia só para revisar
O Radar lê dados de Analytics de clientes. Não são dados de cartão, mas são dados de negócio de outras pessoas, e isso muda o tamanho do cuidado.
Os detalhes de configuração ficam de fora de propósito. Explicar a decisão ajuda quem está construindo; publicar o mapa ajuda quem quer entrar.
02
As decisões
Seis decisões, e o custo de cada uma
Organizei em três frentes: quem acessa, onde ficam os dados e como o servidor roda.
Front e API se reconhecem
O painel roda na Vercel, que não tem IP fixo. Liberar por IP não funcionaria, então a API só responde a quem apresenta uma credencial do próprio painel.
Sair derruba o acesso
Cada login carrega uma versão. Ao sair, ou ao desativar alguém, a versão muda e os acessos antigos param na hora.
Limite por conta, não por IP
Todo login passa pelo mesmo servidor intermediário. Limitar por IP travaria todo mundo junto; por conta, trava só quem erra.
Banco sem superpoderes
A aplicação usa um usuário que lê e escreve dados. Criar e apagar estrutura é papel das migrações.
Container sem root
A API roda com usuário próprio, arquivos só de leitura e sem permissões extras.
Fechado por padrão
Rota nova nasce exigindo administrador. Abrir é uma decisão, não um esquecimento.
03
O pipeline
O erro que a integração contínua achou antes de mim
Montei o pipeline achando que ele só ia confirmar o que eu já sabia. Na primeira execução, tudo ficou verde, menos uma linha: os testes que sobem um banco de verdade nunca tinham rodado no build.
Eles passavam quando eu rodava um por um na minha máquina. O build simplesmente não os chamava.
testes de integração executados pelo build. Eles existiam, mas o build não os chamava.
rodam a cada envio, com banco de verdade, antes de qualquer imagem ser gerada.
Um teste que não roda no build é só um arquivo que dá segurança falsa.
04
O que já estava no ar
Revisar os projetos antigos também
Publicar o Radar no mesmo servidor de projetos antigos me fez olhar para eles. Alguns estavam mais expostos do que precisavam. Fechei antes de subir o novo.
É a parte menos bonita do trabalho, e provavelmente a mais útil: o projeto novo herda o cuidado, os antigos ganham de carona.
05
Em números
O Radar hoje
Nenhum desses números garante que nada vai dar errado. Eles garantem que, quando der, eu fico sabendo cedo.
FIM
O que levar daqui
Segurança não é uma lista de ferramentas. É decidir, item por item, o que você aceita pagar em conveniência para ter controle, e escrever teste para cada decisão.
Eduardo Ciudad
Desenvolvedor backend e fundador da CiudadLab. Escreve sobre o que constrói e coloca no ar.