Envie o IP do cliente para a origem em um header
Crie uma regra na fase de requisição que copia o endereço IP do cliente para um header de requisição X-Client-IP, para que a origem receba só esse endereço.
Você pode enviar o endereço Internet Protocol (IP) do cliente para a sua origem em um header de requisição dedicado pelo Azion Console. Uma regra na fase de requisição do Rules Engine para Applications adiciona o header.
Quando um usuário envia uma requisição a uma aplicação, o header X-Forwarded-For carrega o endereço IP do cliente. A infraestrutura distribuída da Azion intermedia as requisições à aplicação. Por isso, o mesmo header também carrega os outros endereços na rota da requisição. Para isolar o endereço IP do cliente, uma regra o encaminha em um header próprio.
Pré-requisitos
- Uma aplicação que um workload entrega, com uma regra que envia as requisições dela para uma origem. Para criar os dois, consulte Primeiros passos com Applications.
- Acesso ao Azion Console. Para entrar, consulte Como acessar o Azion Console.
Adicione o endereço IP do cliente a um header de requisição
A regra desta seção adiciona um header X-Client-IP à requisição que a Azion envia para a origem. O valor do header é a variável ${remote_addr}, que contém o endereço IP do cliente que envia a requisição. A regra corresponde a todas as requisições, porque todo caminho começa com /.
Para criar a regra pelo Azion Console:
Acesse Azion Console > Applications > sua aplicação.
Na seção General, insira um Name para a regra, como client-ip-header.
Na seção Phase, selecione Request Phase. A fase de uma regra não pode mudar depois que você cria a regra.
Na seção Criteria, selecione ${uri} como variável e starts_with como operador.
Insira / como argumento.
Na seção Behaviors, selecione Add Request Header.
Insira X-Client-IP:${remote_addr} como argumento do behavior.
A regra aparece na aba Rules Engine, em Request. Cada requisição que a Azion envia para a origem carrega o header X-Client-IP. O valor dele é o endereço IP do cliente que originou a requisição.
A sua aplicação pode já ter uma regra na fase de requisição que corresponde a todos os caminhos, como a regra que envia as requisições para uma origem. Essa regra pode carregar o header no lugar de uma regra nova. Uma regra contém até 10 behaviors.
Para adicionar o header a uma regra existente pelo Azion Console:
Acesse Azion Console > Applications > sua aplicação e selecione a aba Rules Engine.
Selecione a regra que corresponde a todos os caminhos. O drawer Edit Rule abre.
Na nova linha de behavior, selecione Add Request Header.
Insira X-Client-IP:${remote_addr} como argumento do behavior.
A regra mantém os outros behaviors dela, e cada requisição que corresponde à regra chega à origem com o header X-Client-IP.
O nome do header aceita apenas letras, números, hífens e underscores. Para enviar o endereço com outro nome, substitua X-Client-IP no argumento. Para os caracteres que o valor de um header aceita, consulte Add Request Header.