---
name: azion-instale-o-bot-manager-lite
description: >-
  Instale o Bot Manager Lite pelo Azion Marketplace, crie a instância de função e a regra do Rules Engine que a executam, e vincule o firewall a um workload.
---

# Instale o Bot Manager Lite

Você instala o [Bot Manager Lite](/pt-br/documentacao/plataforma/firewall/bot-manager/bot-manager-lite/) pelo Azion Marketplace e o coloca no caminho de requisição da sua aplicação, pelo Azion Console.

Cinco objetos precisam existir antes de uma requisição ser pontuada: a função instalada, um [Firewall](/pt-br/documentacao/plataforma/firewall/) carregando o módulo **Functions**, uma instância de função que guarda os argumentos, uma regra do Rules Engine que executa essa instância e um workload vinculado ao firewall. Cada estágio abaixo cria um deles.

Este guia é o caminho longo, e começa de uma conta sem nada configurado. Para a mesma instância e a mesma regra escritas com o Azion CLI ou com a API da Azion, e para a requisição que prova que a função pontuou alguma coisa, consulte [Primeiros passos com Bot Manager](/pt-br/documentacao/plataforma/firewall/bot-manager/primeiros-passos/).

---

## Pré-requisitos

- Uma conta Azion. Para entrar, consulte [Como acessar o Azion Console](/pt-br/documentacao/guias/plataforma/conta-e-billing/como-acessar-o-azion-console/).
- Uma aplicação servida por um [workload](/pt-br/documentacao/plataforma/workloads/), em um domínio no formato `<id>.map.azionedge.net` ou em um domínio seu.
- O [Azion CLI](/pt-br/documentacao/devtools/cli/) instalado e autorizado, para o último estágio.
- Ligar um produto ou um módulo pode gerar custos de uso. Para as métricas pelas quais o Bot Manager é cobrado, consulte [Preços](/pt-br/documentacao/fundamentos/precos/#bot-manager).

---

## Instale a integração pelo Marketplace

A função é instalada uma vez por conta, e a instalação é feita no Azion Console. Para instalá-la:

1. **Abra o Marketplace**

   Acesse [Azion Console](https://console.azion.com/) > **Marketplace**.

2. **Encontre a integração**

   Informe `Bot Manager Lite` no campo de busca e selecione o card da integração. Navegar pelos cards e pelos filtros de categoria alcança a mesma página.

3. **Selecione Install**

O card mostra `Successfully installed!` e `Latest version installed!`, e a função aparece na lista **Function** do drawer **Create Instance**. Em Azion Console > **Functions**, uma coluna **Vendor** a marca como instalação pelo Marketplace.

---

## Crie o firewall

O firewall é onde a função é instanciada e onde vive a regra que a executa. Para criar um:

1. **Abra a página Firewalls**

   Acesse [Azion Console](https://console.azion.com/) > **Firewalls** e crie um firewall.

2. **Nomeie o firewall**

   Na seção **General**, informe um **Name**. Por exemplo: `storefront-firewall`.

3. **Confirme que o módulo Functions está ligado**

   Na seção **Modules**, o switch **Functions** é o que permite a um firewall executar uma função instalada. Um firewall criado com o Azion CLI já o tem ligado.

4. **(Opcional) Ligue o Debug Rules**

   Na seção **Debug Rules**, ligue o switch **Active**. O firewall passa então a registrar quais regras do Rules Engine foram executadas para cada requisição, que é o que informa se a regra abaixo foi acionada.

5. **Salve o firewall**

O firewall carrega uma aba **Functions Instances** enquanto o módulo **Functions** permanecer ligado. Para cada configuração deste formulário, consulte [Defina as configurações principais de um firewall](/pt-br/documentacao/guias/seguranca-de-aplicacoes/firewall-e-waf/firewall-definir-main-settings/).

---

## Crie a instância de função

Uma instância tira toda a sua configuração de um objeto JSON. O Bot Manager Lite entrega um padrão para os argumentos que lê, então uma instância que não define nenhum deles é executada com `threshold` em `30`, `action` em `deny`, `internal_logs` em `0` e `log_tag` em `bot-manager-instance`.

Quatro argumentos bastam para uma primeira instância:

```json
{
  "threshold": 30,
  "action": "deny",
  "internal_logs": 2,
  "log_tag": "storefront-bots"
}
```

`threshold` é a pontuação que uma requisição alcança antes de `action` ser aplicada a ela. `internal_logs` em `2` escreve uma linha de report para toda requisição, incluindo uma que pontua `0`, que é como os primeiros dias de tráfego se tornam legíveis. `log_tag` identifica esta instância nessas linhas, então dê a cada instância uma tag própria. Definir `action` como `allow` até você saber quanto o seu próprio tráfego pontua impede a instância de recusar um cliente; para essa janela e o que ela custa, consulte [Boas práticas de Firewall](/pt-br/documentacao/plataforma/firewall/boas-praticas/#bot-manager).

> **Atenção**
>
> Nada valida o objeto. Toda chave é armazenada e lida de volta exatamente como foi digitada, incluindo uma chave que a função nunca lê. Escrever `thresold` no lugar de `threshold` deixa o threshold em `30`, e nenhuma interface reporta um problema.

Para criar a instância:

1. **Abra a aba Functions Instances**

   Em **Firewalls**, selecione o firewall que você criou e depois selecione a aba **Functions Instances**.

2. **Selecione + Function**

   Um firewall que ainda não carrega instância oferece a mesma ação como **+ Function Instance**.

3. **Nomeie a instância**

   Na seção **General**, informe um **Name**. Por exemplo: `bot-manager-lite`.

4. **Selecione a função instalada**

   Na seção **Function**, selecione a função Bot Manager Lite. O seletor guarda apenas as funções da conta que são executadas em um firewall.

5. **Informe os argumentos**

   Na seção **Arguments**, informe o objeto. A função instalada não publica esquema de argumentos, então a seção guarda um editor JSON e não constrói formulário a partir dele.

6. **Salve a instância**

A instância aparece em **Functions Instances**, com o seu **Name**, **Function**, **Last Editor** e **Last Modified**. O formulário não carrega um controle **Active**, porque o Azion Console cria toda instância ativa.

Para mudar um argumento depois, selecione a instância na mesma aba, edite a seção **Arguments** e selecione **Save**. Uma mudança alcança a infraestrutura distribuída da Azion em cerca de dois minutos, então espere antes de ler uma resposta como a nova configuração. Para cada argumento que o objeto aceita, com o seu tipo e o seu padrão, consulte [Bot Manager Lite](/pt-br/documentacao/plataforma/firewall/bot-manager/bot-manager-lite/).

---

## Crie a regra

A instância não pontua nada até uma regra executá-la. Uma regra do [Rules Engine for Firewall](/pt-br/documentacao/plataforma/firewall/rules-engine/) decide quais requisições alcançam a instância, por um comportamento **Run Function** que a nomeia. Para criar a regra:

1. **Abra a aba Rules Engine**

   Em **Firewalls**, selecione o seu firewall e depois selecione a aba **Rules Engine**.

2. **Selecione + Rule**

3. **Nomeie a regra**

   Informe um nome. Por exemplo: `Run Bot Manager Lite on every request`. A descrição é opcional.

4. **Defina o critério**

   Na seção **Criteria**, selecione a variável `Request Uri`, o operador *starts with* e `/` como argumento.

5. **Acrescente o comportamento Run Function**

   Na seção **Behaviors**, selecione **Run Function**. O controle ao lado não carrega rótulo e lista as instâncias de função deste firewall, então selecione a que você nomeou. Uma regra carrega um comportamento **Run Function**.

6. **Salve a regra**

O firewall executa a instância em toda requisição que recebe.

Um segundo critério estreita esse conjunto. `Request Uri` com o operador *does not match* mantém a instância fora das requisições que não carregam nada a pontuar: os assets estáticos, e o caminho `/.well-known/` que clientes de automação e de web API usam. Para as extensões a excluir e o que a exclusão custa, consulte [Boas práticas de Firewall](/pt-br/documentacao/plataforma/firewall/boas-praticas/#bot-manager).

---

## Vincule o firewall ao workload

Um firewall inspeciona as requisições dos workloads vinculados a ele, e o vínculo fica no deployment do workload, não no registro do workload. Para vincular um workload existente, crie um deployment que nomeia a aplicação e o firewall:

```bash
azion create workload-deployment --workload-id <workload-id> --name <deployment-name> \
  --application-id <application-id> --firewall-id <firewall-id> --strategy-type default \
  --active true --current true
```

O comando imprime o id do novo deployment:

```text
Created Workload Deployment with ID 123456
```

As requisições ao domínio do workload alcançam então o firewall, e a regra executa a instância em cada uma. Dê ao vínculo cerca de dois minutos antes de ler qualquer coisa em uma resposta.

A linha de report que a função escreve é onde está o resultado de uma requisição pontuada. Para mais informações, consulte [Logs](/pt-br/documentacao/plataforma/firewall/bot-manager/logs/).

---

## Próximos passos

- [Primeiros passos com Bot Manager](/pt-br/documentacao/plataforma/firewall/bot-manager/primeiros-passos.md): A mesma instância e a mesma regra no Azion CLI e na API da Azion, e a requisição que prova que uma pontuação foi escrita.
- [Argumentos](/pt-br/documentacao/plataforma/firewall/bot-manager/argumentos.md): Cada argumento que uma instância aceita, com o seu tipo, o seu padrão e os valores que assume.
- [Boas práticas de Firewall](/pt-br/documentacao/plataforma/firewall/boas-praticas.md#bot-manager): Como executar uma janela de observação antes de a instância recusar qualquer coisa, e como definir um threshold pelos seus próprios logs.
- [Solucionar problemas de Firewall](/pt-br/documentacao/plataforma/firewall/solucao-de-problemas.md#bot-manager): O que fazer quando um cliente recebe uma resposta inesperada, ou quando um argumento parece não fazer nada.
