Como automatizar o Origin Shield

O Origin Shield fornece a lista de endereços IP dos Edge Nodes da Azion.

proteja sua infraestrutura

Ao ativar o Origin Shield, a sua aplicação é protegida por uma network list mantida pela Azion. Os endereços IP nela mudam de tempos em tempos, mas você pode automatizar um comportamento usando o Rules Engine para garantir que você esteja sempre usando a lista atualizada.


Para criar uma regra:

  1. No Azion Console, navegue até Edge Firewall.
  2. Selecione o edge firewall em que você deseja configurar a regra.
  3. Clique na aba Rules Engine.
  4. Clique no botão New Rule.
  5. Dê um nome à sua regra e, opcionalmente, uma descrição.
  6. Na seção Criteria, selecione a variável Network.
  7. Como operador de comparação, selecione does not match.
  8. Como argumento, selecione a lista Azion Origin Shield.
  9. Na seção Behaviors, selecione Drop (Close Without Response) da lista de comportamentos.
  10. Clique no botão Save.

Se a sua aplicação receber uma requisição gerada a partir de um IP que não está na lista, o edge firewall irá descartar a requisição.


  1. Execute a seguinte requisição GET para obter o id da lista Azion Origin Shield:
Terminal window
curl --location 'https://api.azionapi.net/network_lists' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [VALOR DO TOKEN]'
  1. Você receberá uma resposta semelhante a esta:
{
"count": 1,
"total_pages": 1,
"schema_version": 3,
"links": {
"previous": null,
"next": null
},
"results": [
{
"id": 6217,
"last_editor": "user@email.com",
"last_modified": "2023-11-14T21:35:39.808175Z",
"list_type": "ip_cidr",
"name": "Azion Origin Shield",
"country_list": [],
"ip_list": [
"192.168.0.5"
]
}
]
}
}
  1. Execute a seguinte requisição POST no seu terminal, substituindo [VALOR DO TOKEN] pelo seu personal token, a variável <edge_firewall_id> pelo seu ID de edge firewall, e o valor <network_list_id> com o ID da lista do Origen Shield:
Terminal window
curl --location 'https://api.azionapi.net/edge_firewall/<edge_firewall_id>/rules_engine' \
--header 'Accept: application/json; version=3' \
--header 'Authorization: Token [VALOR DO TOKEN]' \
--header 'Content-Type: application/json' \
--data '{
"name": "Automatizar Origem Shield",
"is_active": true,
"behaviors": [
{
"name": "drop"
}
],
"criteria": [
[
{
"variable": "network",
"operator": "is_not_in_list",
"conditional": "if",
"argument": "<network_list_id>"
}
]
]
}'
ChaveDescrição
nameNome da regra
behaviorsArray que armazena objetos que definem comportamentos
criteriaArray que armazena objetos que definem critérios

Consulte a documentação da API Azion para obter mais informações sobre objetos de critérios e comportamentos.

  1. Você receberá a seguinte resposta:
{
"results": {
"name": "Automatizar Origem Shield",
"is_active": true,
"behaviors": [
{
"name": "drop"
}
],
"criteria": [
[
{
"variable": "network",
"operator": "is_not_in_list",
"conditional": "if",
"argument": "6217"
}
]
],
"last_modified": "2023-11-29T19:53:56.476161Z",
"last_editor": "user@email.com",
"id": 28629,
"order": 3
},
"schema_version": 3
}
  1. Aguarde alguns minutos para que as alterações se propaguem.

Se sua aplicação receber uma requisição gerada de um IP que não está na lista, o edge firewall rejeitará a requisição.




Contributors