Olá, desenvolvedores! Hoje vamos falar sobre um aspecto muito importante da segurança e funcionalidade das suas aplicações web quando você está utilizando o nosso WAF (Web Application Firewall) e CDN (Content Delivery Network) - a captura de endereços IP dos usuários.
No cenário ideal, um servidor web recebe solicitações diretamente de usuários e pode registrar os endereços IP desses usuários observando o "Remote Address". No entanto, quando sua aplicação está protegida atrás de um WAF como o nosso, as solicitações dos usuários são primeiramente encaminhadas através do nosso WAF. Isso significa que, se você tentar registrar o "Remote Address", vai acabar com o endereço IP do nosso WAF, e não o do usuário real.
Aqui na XLabs Security, estamos sempre procurando maneiras de facilitar e melhorar a experiência dos nossos usuários. Para solucionar essa questão, implementamos a funcionalidade de passar o endereço IP original do usuário através de um cabeçalho HTTP especial chamado "X-Forwarded-For".
O cabeçalho "X-Forwarded-For" é uma prática padrão para identificar o endereço IP original de um cliente que se conecta a um servidor web através de um proxy HTTP, como o nosso WAF. Em outras palavras, este cabeçalho permite que a sua aplicação veja o endereço IP real do usuário, mesmo que a solicitação tenha passado por um ou mais proxies.
Aqui está um exemplo de como este cabeçalho pode se parecer:
X-Forwarded-For: client, proxy1, proxy2
Neste exemplo, 'client' é o endereço IP do usuário, enquanto 'proxy1' e 'proxy2' são os endereços IP dos proxies (se houver) que a solicitação atravessou antes de chegar ao seu servidor.
Agora, para fazer uso do cabeçalho "X-Forwarded-For" na sua aplicação, você precisará modificar a lógica de registro do IP para verificar primeiro este cabeçalho. O código exato dependerá do idioma e do framework que você está usando, mas geralmente envolve verificar se o cabeçalho "X-Forwarded-For" está presente, e em caso afirmativo, usar o primeiro endereço IP listado lá.
Lembre-se, a segurança é uma viagem, não um destino. A XLabs Security está aqui para ajudá-lo a cada passo do caminho. Se você tiver alguma dúvida sobre como implementar o cabeçalho "X-Forwarded-For" na sua aplicação, não hesite em entrar em contato com a nossa equipe de suporte. Estamos sempre prontos para ajudar!