Como criar regras para executar comportamentos com o Rules Engine para o Edge Firewall
Implementar regras em seu edge firewall usando o Rules Engine permitirá que você determine as regras que ele deve executar em cenários específicos.
Este guia demonstra o processo de criação de uma regra com um exemplo prático de verificação da existência de um certificado e retorno de uma resposta personalizada quando não houver um. Esse comportamento é útil em cenários como ajustar suas políticas para cumprir os requisitos do BACEN.
Para criar uma regra:
- No Azion Console, vá para Edge Firewall.
- Selecione o edge firewall no qual deseja configurar a regra.
- Clique na aba Rules Engine.
- Clique no botão + Rule.
- Dê um nome à sua regra e, opcionalmente, uma descrição.
- Na seção Criteria, selecione a variável
SSL Verification Status
. - Como operador de comparação, selecione
is equal
. - Como argumento, selecione
Missing Client Certificate
. - Na seção Behaviors, selecione Set Custom Response.
- Como argumentos:
- Em Status Code, adicione
401
. - Em Content Type, adicione o conteúdo e a descrição do cabeçalho. Exemplo:
application/json
. - Em Content Body, insira a mensagem que deseja apresentar aos usuários.
- Em Status Code, adicione
- Clique no botão Save.
Para criar uma regra:
- No Real-Time Manager (RTM), vá para Edge Firewall.
- Selecione o edge firewall no qual deseja configurar a regra.
- Clique na aba Rules Engine.
- Clique no botão New Rule.
- Dê um nome à sua regra e, opcionalmente, uma descrição.
- Na seção Criteria, selecione a variável
SSL Verification Status
. - Como operador de comparação, selecione
is equal
. - Como argumento, selecione
Missing Client Certificate
. - Na seção Behaviors, selecione Set Custom Response.
- Como argumentos:
- Em Status Code, adicione
401
. - Em Content Type, adicione o conteúdo e a descrição do cabeçalho. Exemplo:
application/json
. - Em Content Body, insira a mensagem que deseja apresentar aos usuários.
- Em Status Code, adicione
- Clique no botão Save.
- Execute a seguinte requisição
POST
para criar uma regra, substituindo[TOKEN VALUE]
pelo seu personal token e a variável<edge_firewall_id>
pelo valor do ID do edge firewall:
curl --location 'https://api.azionapi.net/edge_firewall/<edge_firewall_id>/rules_engine' \--header 'Accept: application/json; version=3' \--header 'Authorization: Token [TOKEN VALUE]' \--header 'Content-Type: application/json' \--data '{ "name": "SSL Verification", "is_active": true, "behaviors": [ { "name": "set_custom_response", "status_code": 401, "content_type": "application/json", "content_body": "{}" } ], "criteria": [ [ { "variable": "ssl_verification_status", "operator": "is_equal", "conditional": "if", "argument": "MISSING_CLIENT_CERTIFICATE" } ] ]}'
Chave | Descrição |
---|---|
name | Nome da regra |
description | Descrição da regra |
behaviors | Array que armazena objetos que definem comportamentos |
criteria | Array que armazena objetos que definem critérios |
Veja a documentação da Azion API para saber mais sobre os objetos de criteria e behaviors.
- Você receberá a seguinte resposta:
{ "results": { "name": "SSL Verification", "is_active": true, "behaviors": [ { "status_code": 401, "content_body": "{}", "name": "set_custom_response", "content_type": "application/json" } ], "criteria": [ [ { "variable": "ssl_verification_status", "operator": "is_equal", "conditional": "if", "argument": "MISSING_CLIENT_CERTIFICATE" } ] ], "last_modified": "2023-11-23T23:54:14.941097Z", "last_editor": "user@email.com", "id": 28414, "order": 2 }, "schema_version": 3}
- Aguarde alguns minutos para que as alterações se propaguem.
Contribuidores