# Automatize a segurança com Azion Functions

import DocButton from '~/components/webkit/DocButton.vue';

## Functions e Firewall

Functions são funções executadas na Azion Web Platform, com baixa latência, trazendo o poder operacional mais perto do usuário final.

Através das functions, você pode escrever seu próprio código de segurança em **JavaScript** e implantá-lo para ser executado no edge, permitindo que você:

- Aumente sua proteção
- Tenha mais dinamismo
- Aplique a lógica que seu negócio precisa
- Use APIs que fornecem manipulação de cabeçalhos de requisição e resposta
- Implemente lógica baseada em network lists

---

## Desenvolva functions para a segurança

As functions da Azion para o firewall são executadas na fase de requisição e seguem o seguinte processo:

1. As regras configuradas no [Rules Engine para Firewall](/pt-br/documentacao/produtos/secure/firewall/rules-engine/) para a função ser executada são acionadas.

2. O Azion Runtime processa a função, retornando um resultado.

3. O Rules Engine para Firewall retoma o processamento, com base no resultado, a partir do ponto em que o comportamento foi acionado.

<DocButton href="/pt-br/documentacao/produtos/secure/firewall/functions/" label="saiba mais sobre Functions para Firewall" kind="secondary" target="_blank" size="medium" />

---

## Segurança através de APIs

O [Azion Runtime](/pt-br/documentacao/runtime/visao-geral/) suporta uma lista de APIs que permitem a manipulação de [metadados](/pt-br/documentacao/produtos/secure/automatizar/functions/#metadados) e o uso de [network lists](/pt-br/documentacao/produtos/secure/automatizar/functions/#network-list) para ajudar na implementação da lógica.

<DocButton href="/pt-br/documentacao/runtime-apis/javascript/" label="saiba mais sobre as APIs Web suportadas" kind="secondary" target="_blank" size="medium" />
<DocButton href="/pt-br/documentacao/produtos/devtools/azion-edge-runtime/compatibilidade/node/" label="saiba mais sobre a compatibilidade com Node.js" kind="secondary" target="_blank" size="medium" />

### Metadados

A API de Metadados permite o acesso a um conjunto de metadados que podem ser manipulados para:

- Filtrar e gerenciar o acesso à sua aplicação
- Aplicar lógica específica em diferentes cenários com base no GeoIP

<DocButton href="/pt-br/documentacao/produtos/applications/functions/runtime/api-reference/metadata/" label="saiba mais sobre a API de metadados" kind="secondary" target="_blank" size="medium" />

### Network list

A interface de network list da Azion permite comparar um endereço IP com uma lista de rede específica. Se o endereço IP informado estiver dentro da lista de rede, ele retorna `true` e a lógica de implementação desejada pode continuar com base nessa informação.

Os IPs listados podem ser usados para gerenciamento de:

- Allowlists
- Blocklists
- Greylists

<DocButton href="/pt-br/documentacao/produtos/applications/functions/runtime/api-reference/network-list/" label="saiba mais sobre a API de Network Lists" kind="secondary" target="_blank" size="medium" />
<DocButton href="/pt-br/documentacao/produtos/secure/firewall/network-shield/network-lists/" label="saiba mais sobre Network Lists na Azion" kind="secondary" target="_blank" size="medium" />

---