Como criar regras de Request e Response usando o Rules Engine para Edge Application
Rules Engine é um recurso de Edge Application que permite que você crie soluções sem necessidade de código, aplicando as regras de negócio do seu aplicativo diretamente no edge.
Com a arquitetura de proxy reverso da Azion Edge Application, as regras que você cria serão executadas entre a Request phase, que contém dados que o cliente envia para uma origem, ou a Response phase, que contém dados da origem que são enviados para o cliente.
Saiba mais sobre Rules EngineCrie uma regra de Request: Rewrite Request
As regras criadas na Request phase serão executadas antes que a requisição aos servidores de origem seja concluída. Por exemplo, usando o comportamento Rewrite Request, você pode criar uma regra para entregar conteúdo a um usuário a partir de uma URI específica sem que ele precise especificar o caminho exato da origem na requisição.
Para ilustrar esse guia, presuma que o seu objetivo é o de entregar o conteúdo da página /content/page.html
quando um cliente faz uma requisição para https://www.domain.com/page
. Para criar uma regra que irá reescrever esta requisição:
- Acesse o Azion Console > Edge Application.
- Selecione a edge application para qual você deseja criar a regra.
- Na aba Main Settings, habilite o módulo Application Accelerator.
- Clique no botão Save.
- Selecione a aba Rules Engine.
- Clique no botão + Rule.
- Dê um nome à sua regra e, se necessário, uma descrição.
- Selecione Request Phase.
- Na seção Criteria, configure seus critérios da seguinte forma:
- If
${uri}
is equal to/page
- Este critério irá identificar a URL da requisição pela barra
/
que inicia a URI.
- If
- Na seção Behaviors, adicione o comportamento que você deseja que sua aplicação execute. Nesse caso, Rewrite Request.
- O comportamento selecionado leva um argumento; para redirecionar a requisição para a página:
${uri}content/page.html
- Este argumento concatena a variável
${uri}
, cujo valor é/
, para o caminho da página.
- Clique no botão Save para salvar sua regra.
- Acesse o Real-Time Manager (RTM).
- No canto superior esquerdo da página, vá para Products menu > Edge Application.
- Selecione a edge application para qual você deseja criar a regra.
- Na aba Main Settings, habilite o módulo Application Accelerator.
- Clique no botão Save.
- Selecione a aba Rules Engine.
- Clique no botão Add Rule.
- No menu suspenso, selecione Request Phase.
- Dê um nome à sua regra e, se necessário, uma descrição.
- Na seção Criteria, configure seus critérios da seguinte forma:
- If
${uri}
is equal to/page
- Este critério irá identificar a URL da requisição pela barra
/
que inicia a URI.
- Na seção Behaviors, adicione o comportamento que você deseja que sua aplicação execute. Nesse caso, Rewrite Request.
- O comportamento selecionado leva um argumento; para redirecionar a requisição para a página:
${uri}content/page.html
- Este argumento concatena a variável
${uri}
, cujo valor é/
, para o caminho da página.
- Clique no botão Save para salvar sua regra.
Agora, quando uma requisição for feita para a URL https://www.domain.com/page
, os usuários irão visualizar o conteúdo da página /content/page.html
, sem precisar especificar este endereço no navegador.
Crie uma regra de Response: Filter Response Header
As regras criadas na Response phase serão executadas antes que a resposta seja entregue ao cliente. Por exemplo, você pode criar uma regra que irá remover um cabeçalho HTTP da resposta usando o comportamento Filter Response Header.
O cabeçalho Server
armazena informações sobre o servidor que gerou a resposta. Ao remover esse cabeçalho, você impede que clientes recebam informações sobre a infraestrutura da sua aplicação, aumentando sua segurança ao reduzir a quantidade de dados disponíveis para possíveis invasores.
Para remover o cabeçalho Server
da resposta:
- Acesse o Azion Console > Edge Application.
- Selecione a edge application para qual você deseja criar a regra.
- Na aba Main Settings, habilite o módulo Application Accelerator.
- Clique no botão Save.
- Selecione a aba Rules Engine.
- Clique no botão + Rule.
- Dê um nome à sua regra e, se necessário, uma descrição.
- Selecione Response Phase.
- Na seção Criteria, configure seus critérios da seguinte forma:
- If
${uri}
starts with/
- Este critério executará a regra para toda a aplicação.
- Na seção Behaviors, adicione os comportamentos que você deseja executar. Neste caso, Filter Response Header.
- O comportamento selecionado recebe um argumento, que deve ser
Server
.
Esse argumento removerá todas as instâncias do cabeçalho
Server
de todas as respostas.
- Clique no botão Save para salvar sua regra.
- Acesse o Real-Time Manager (RTM).
- No canto superior esquerdo da página, vá para Products menu > Edge Application.
- Selecione a edge application para qual você deseja criar a regra.
- Na aba Main Settings, habilite o módulo Application Accelerator.
- Clique no botão Save.
- Selecione a aba Rules Engine.
- Clique no botão Add Rule.
- No menu suspenso, selecione Response Phase.
- Dê um nome à sua regra e, se necessário, uma descrição.
- Na seção Criteria, configure seus critérios da seguinte forma:
- If
${uri}
starts with/
- Este critério executará a regra para toda a aplicação.
- Na seção Behaviors, adicione os comportamentos que você deseja executar. Neste caso, Filter Response Header.
- O comportamento selecionado recebe um argumento, que deve ser
Server
.
- Esse argumento removerá todas as instâncias do cabeçalho
Server
de todas as respostas.
- Clique no botão Save para salvar sua regra.
A partir desse momento, quando uma requisição for feita ao seu aplicativo, o cabeçalho Server
será removido da resposta.