Azion CLI waf
Comandos da Azion CLI que criam, listam, descrevem, atualizam e excluem rule sets do WAF e seus limiares de ameaça, com cada flag e seu padrão.
Os comandos waf da Azion CLI criam, listam, descrevem, atualizam e excluem rule sets do WAF. Um rule set guarda um limiar para cada ameaça que cobre, um nome de ameaça associado a uma sensibilidade, e a saída da CLI o chama de WAF. As opções que todo comando aceita, como --format, --out e -y, estão em Opções globais.
Criar
azion create waf cria um rule set com o nome e as configurações que você informa:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--active | — | string | — | Ativa (true) ou desativa (false) o rule set. |
--engine-version | — | string | — | Versão do motor do WAF. Um rule set criado sem ela recebe 2021-Q3. |
--file | — | string | — | Caminho de um arquivo JSON com os atributos do rule set. Use - para ler o JSON da entrada padrão. |
--name | — | string | — | Nome do rule set. |
--product-version | — | string | — | Versão de produto do rule set. Um rule set criado sem ela recebe 1.0. |
--rulesets | — | string | — | Lista, separada por vírgulas, dos IDs dos rulesets a ativar. Um rule set criado sem ela recebe 1. |
--thresholds | — | string | — | Lista de pares threat=sensitivity separados por vírgulas. Um rule set criado sem ela recebe as oito ameaças em medium. |
--type | — | string | — | Tipo do motor do WAF. Um rule set criado sem ela recebe score. |
As oito ameaças são cross_site_scripting, directory_traversal, evading_tricks, file_upload, identified_attack, remote_file_inclusion, sql_injection e unwanted_access. A sensibilidade aceita highest, high, medium, low ou lowest.
Este comando cria um rule set ativo chamado my-strict-waf, com sensibilidade highest para cross-site scripting e high para SQL injection:
O comando imprime o ID do rule set:
O rule set guarda somente os limiares que você informa: azion describe waf --waf-id 12348 --format json lista cross_site_scripting em highest e sql_injection em high, e nenhuma outra ameaça.
Uma sensibilidade fora desses cinco valores é recusada:
Listar
azion list waf lista os rule sets da sua conta, 50 por página:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--details | — | — | — | Adiciona as colunas PRODUCT VERSION, LAST EDITOR e LAST MODIFIED às colunas ID, NAME e ACTIVE. |
--filter | — | string | — | Nome pelo qual filtrar a lista. |
--order-by | — | string | — | Campo pelo qual ordenar a lista. |
--page | — | int | 1 | Número da página a retornar. |
--page-size | — | int | 50 | Número de rule sets em cada página. |
Este comando lista os rule sets da conta:
O comando imprime uma linha por rule set:
Descrever
azion describe waf imprime as configurações de um rule set:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--waf-id | — | int | — | ID do rule set a descrever. |
Este comando descreve o rule set com ID 12347, criado somente com --name e --active:
O comando imprime o nome, o estado e as configurações do motor do rule set. As oito ameaças têm a sensibilidade padrão medium:
Com --format json, o comando imprime o objeto completo: active, engine_settings, id, is_versioned, last_editor, last_modified, name, product_version, version, version_id e version_state. O objeto engine_settings guarda engine_version, type e um objeto attributes com os rulesets e os thresholds que as flags de criação e de atualização definem.
Um ID que não existe falha com este erro:
Atualizar
azion update waf altera o nome, o estado ativo ou as configurações do motor de um rule set:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--active | — | string | — | Ativa (true) ou desativa (false) o rule set. |
--engine-version | — | string | — | Versão do motor do WAF. |
--file | — | string | — | Caminho de um arquivo JSON com os atributos a alterar. Use - para ler o JSON da entrada padrão. |
--name | — | string | — | Novo nome do rule set. |
--rulesets | — | string | — | Lista, separada por vírgulas, dos IDs dos rulesets a ativar. |
--thresholds | — | string | — | Lista de pares threat=sensitivity separados por vírgulas. Substitui a lista inteira de limiares. |
--type | — | string | — | Tipo do motor do WAF. |
--waf-id | — | int | — | Obrigatório, também com --file. ID do rule set a atualizar. Sem ela, o comando pergunta o ID. |
Este comando renomeia o rule set com ID 12347 para my-waf-renamed e define SQL injection com sensibilidade lowest:
O comando imprime o ID do rule set atualizado:
Depois dessa atualização, azion describe waf --waf-id 12347 --format json retorna um limiar, sql_injection em lowest. As outras sete ameaças saem do rule set.
Excluir
azion delete waf exclui um rule set:
| Flag | Curta | Tipo | Padrão | Descrição |
|---|---|---|---|---|
--waf-id | — | int | — | ID do rule set a excluir. |
Este comando exclui o rule set com ID 12347:
O comando confirma a exclusão:
Usar um arquivo JSON
azion create waf e azion update waf leem os atributos do rule set de um arquivo JSON com --file.
Este arquivo cria um rule set ativo chamado my-site-waf, com sensibilidade high para SQL injection. O comando lê name, active e engine_settings do arquivo:
Informe o arquivo ao comando de criação:
O comando imprime o ID do rule set:
O rule set criado a partir desse arquivo guarda um limiar, sql_injection em high, como mostra azion describe waf --format json.
Na atualização, o comando não lê "id" do arquivo. Informe --waf-id na linha de comando, ou o comando pergunta o ID. Este arquivo renomeia o rule set com ID 12349:
Informe o arquivo e o ID ao comando de atualização:
O comando imprime o ID do rule set atualizado:
A atualização é parcial: o arquivo deixa active de fora, e o rule set continua ativo.