Como criar regras para automatizar comportamentos com o Rules Engine
Implementar regras em sua aplicação usando o Rules Engine permite que você determine as tarefas que ela deve executar em cenários específicos sem modificar o código-fonte da sua aplicação.
Este guia demonstra o processo de criação de regras com um exemplo prático, mas a maioria das regras será única para cada aplicação e suas necessidades. Além de ativar variáveis como device groups, configurações de cache e origens, você pode criar uma grande variedade de regras nas fases de solicitação e resposta.
Com esse guia, você irá criar uma regra na fase de resposta para remover um cabeçalho HTTP usando o comportamento Filter Response Header.
Para ativar o módulo Application Accelerator:
- Acesse o Azion Console > Edge Application.
- Clique na edge application que você deseja configurar.
- Ative o módulo Application Accelerator.
- Clique no botão Save.
O cabeçalho Server
armazena informações sobre o servidor que gerou a resposta. Ao remover este cabeçalho, os usuários finais não receberão informações sobre a infraestrutura da sua aplicação, aumentando sua segurança ao reduzir as informações disponíveis para possíveis invasores.
Para remover o cabeçalho Server
:
- Navegue até 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, selecione a variável
${uri}
. - Como operador de comparação, selecione starts with.
- Como argumento, adicione o valor
/
. - Na seção Behaviors, selecione Filter Response Header.
- Como argumento, adicione
Server
. - Clique no botão Save.
- Execute a seguinte requisição
PATCH
em seu terminal, substituindo[TOKEN VALUE]
por seu personal token e a variável<edge_application_id>
por [seu ID de edge application(/pt-br/documentacao/produtos/guias/build/ajustar-cache-settings/) para ativar o módulo Application Accelerator:
curl --location --request PATCH 'https://api.azionapi.net/edge_applications/<edge_application_id>' \--header 'Accept: application/json; version=3' \--header 'Content-Type: application/json' \--header 'Authorization: Token [TOKEN VALUE]' \--data '{ "application_acceleration": true}'
- Você receberá uma resposta com o valor atualizado.
- Execute a seguinte requisição
POST
para criar uma regra na fase de resposta, substituindo<edge_application_id>
pelo valorid
que você recebeu na resposta anterior:
curl --location 'https://api.azionapi.net/edge_applications/<edge_application_id>/rules_engine/response/rules' \--header 'Accept: application/json; version=3' \--header 'Authorization: Token [TOKEN VALUE]' \--header 'Content-Type: application/json' \--data '{ "name": "FilterRespHeader Server", "behaviors": [ { "name": "filter_response_header", "target": "Server" } ], "criteria": [ [ { "variable": "${uri}", "operator": "is_equal", "conditional": "if", "input_value": "/" } ] ]}'
- Você receberá a seguinte resposta:
{ "results": { "id": <rule_id>, "name": "FilterRespHeader Server", "phase": "response", "behaviors": [ { "name": "filter_response_header", "target": "Server" } ], "criteria": [ [ { "variable": "${uri}", "operator": "is_equal", "conditional": "if", "input_value": "/" } ] ], "is_active": true, "order": 1, "description": null }}
- Aguarde alguns minutos para que as alterações se propaguem.
Contribuidores