Instale o Bot Manager Lite
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.
Você instala o 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 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.
Pré-requisitos
- Uma conta Azion. Para entrar, consulte Como acessar o Azion Console.
- Uma aplicação servida por um workload, em um domínio no formato
<id>.map.azionedge.netou em um domínio seu. - O Azion 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.
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:
Acesse Azion Console > Marketplace.
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.
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:
Acesse Azion Console > Firewalls e crie um firewall.
Na seção General, informe um Name. Por exemplo: storefront-firewall.
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.
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.
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.
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:
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.
Para criar a instância:
Em Firewalls, selecione o firewall que você criou e depois selecione a aba Functions Instances.
Um firewall que ainda não carrega instância oferece a mesma ação como + Function Instance.
Na seção General, informe um Name. Por exemplo: bot-manager-lite.
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.
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.
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.
Crie a regra
A instância não pontua nada até uma regra executá-la. Uma regra do Rules Engine for Firewall decide quais requisições alcançam a instância, por um comportamento Run Function que a nomeia. Para criar a regra:
Em Firewalls, selecione o seu firewall e depois selecione a aba Rules Engine.
Informe um nome. Por exemplo: Run Bot Manager Lite on every request. A descrição é opcional.
Na seção Criteria, selecione a variável Request Uri, o operador starts with e / como argumento.
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.
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.
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:
O comando imprime o id do novo deployment:
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.