---
name: azion-vincule-um-rule-set-no-azion-config-js
description: >-
  Declare o WAF rule set e a regra do firewall que o aplica no azion.config.js, para que a Azion CLI crie os dois a partir do repositório.
---

# Vincule um rule set no azion.config.js

Você pode declarar um WAF rule set e a regra do firewall que o aplica no `azion.config.js`, e deixar que a [Azion CLI](/pt-br/documentacao/devtools/cli/) crie os dois a partir do arquivo. Os dois passam a ficar no repositório, em revisão junto da aplicação que eles protegem.

---

## Pré-requisitos

Você precisa da Azion CLI instalada e de um personal token configurado.

---

## Declare o rule set e a regra

No `azion.config.js`, declare o firewall com `waf: true`, a regra que carrega o behavior `setWafRuleset` e o rule set sob `waf`:

```javascript
import { defineConfig } from 'azion';

export default defineConfig({
  firewall: {
    name: 'storefront-firewall',
    active: true,
    waf: true,
    rules: [
      {
        name: 'Apply storefront-waf',
        active: true,
        criteria: [
          {
            variable: 'request_uri',
            conditional: 'if',
            operator: 'starts_with',
            argument: '/',
          },
        ],
        behaviors: [
          {
            setWafRuleset: {
              wafMode: 'blocking',
              wafId: '<waf-id>',
            },
          },
        ],
      },
    ],
  },
  waf: [
    {
      name: 'storefront-waf',
      engineSettings: {
        engineVersion: '2021-Q3',
        type: 'score',
        attributes: {
          rulesets: [1],
          thresholds: [
            { threat: 'sql_injection', sensitivity: 'medium' },
            { threat: 'cross_site_scripting', sensitivity: 'medium' },
          ],
        },
      },
    },
  ],
});
```

A Azion CLI lê o arquivo e cria o que ele declara: o firewall com o WAF ativado, o rule set e a regra que o aplica.

`waf: true` no firewall ativa o WAF, que fica desativado até você ativá-lo. Uma família que você deixa de fora de `thresholds` não é configurada, então liste toda família que você quer pontuada. `setWafRuleset` aceita exatamente duas chaves, `wafMode` e `wafId`. `wafMode` aceita `learning` ou `blocking` neste arquivo: o mesmo modo se lê *Logging* no Azion Console e `logging` em um payload da API. Para o que cada modo faz, consulte [Score e modos](/pt-br/documentacao/plataforma/firewall/waf/score-e-modos/).

---

## Próximos passos

- [Aplique um rule set a toda requisição](/pt-br/documentacao/guias/seguranca-de-aplicacoes/firewall-e-waf/aplicar-rule-set.md): O mesmo binding como uma chamada de API, com a resposta que ela retorna.
- [azion.config.js](/pt-br/documentacao/devtools/cli/azion-config-js.md): Cada campo que este arquivo aceita, incluindo os behaviors de firewall que uma regra pode carregar.
