# Configuração Avançada

## Personalização de Gatilhos da Integração

Em alguns casos, pode haver a necessidade de personalizar qual tráfego aciona a integração Netacea dentro de um único serviço de tráfego Fastly.

Isso pode ocorrer por diversos motivos, incluindo:

* Múltiplos domínios existem no mesmo serviço Fastly, e a Netacea protege cada domínio com um conjunto separado de modelos Datastream
* Múltiplos domínios existem no mesmo serviço Fastly, mas a Netacea protege apenas um subconjunto desses domínios
* A Integração Netacea precisa ser limitada para acionar e proteger um conjunto limitado de caminhos
* A Integração Netacea precisa [se comportar de forma diferente](https://docs.netacea.com/br/visao-geral/integration-modes) com base em determinados critérios

Para suportar gatilhos personalizados, siga os passos descritos abaixo.

{% hint style="warning" %}
Não conclua esta configuração sem discutir os passos com a equipe Netacea
{% endhint %}

## Atualização do Dicionário Netacea

Atualize o dicionário Netacea configurado como parte do [Guia de Instalação e Configuração](https://docs.netacea.com/br/informacoes-do-plugin-netacea/fastly-magento/installation-and-configuration/..#create-an-empty-dictionary) padrão. O dicionário deve ser atualizado para incluir as variáveis e valores normalmente definidos no [Módulo Netacea](https://docs.netacea.com/br/informacoes-do-plugin-netacea/fastly-magento/installation-and-configuration/..#apply-customer-keys-to-the-module).

<figure><img src="https://3103183613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ0VONni9fqVKgqwRyueW%2Fuploads%2Fgit-blob-eb65ad33ebb0f8f1b5f89ec0ba1f265d35d86a1e%2Fimage%20(104).png?alt=media" alt=""><figcaption></figcaption></figure>

Os campos do módulo Netacea devem ser definidos como em branco:

<figure><img src="https://3103183613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ0VONni9fqVKgqwRyueW%2Fuploads%2Fgit-blob-0644bb0ac8cefcd88072c61b6f54687eb96f13c0%2Fimage%20(102).png?alt=media" alt=""><figcaption></figcaption></figure>

## Criação e Personalização do recv\_configure.vcl

Por último, o recv\_configure.vcl precisará ser criado para incluir as declarações condicionais que definem como a integração Netacea é acionada:

* Fazer com que a integração seja acionada em um subconjunto de requisições feitas no serviço Fastly.
* Definir quais credenciais Datastream são utilizadas quando o tráfego aciona a integração no Serviço Fastly.

Navegue até Stores → Configuration → Advanced → System → Full Page Cache → Fastly Configuration → Custom VCL Snippets e clique em "Create".

<figure><img src="https://3103183613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJ0VONni9fqVKgqwRyueW%2Fuploads%2Fgit-blob-637be77c061c98e7dbed7db4802fdef3cd5aabbb%2Fimage%20(106).png?alt=media" alt=""><figcaption></figcaption></figure>

#### Gatilho seletivo

O exemplo a seguir fará com que a integração seja acionada em caminhos de requisição específicos de login.

<pre><code>set req.http.x-netacea:edge_config_key_prefix = "";
declare local var.should_run_netacea BOOL;

set var.should_run_netacea = false;

# Must enable Netacea on the following paths if using captcha:
if (!var.should_run_netacea) {
  if (req.url.path ~ "^/AtaVerifyCaptcha|^\/Mitigations\/") {
    set var.should_run_netacea = true;
  }
}

<strong>if (!var.should_run_netacea) {
</strong>  if (req.url.path ~ "\/.*\/(login)\/") {
    set var.should_run_netacea = true;
  }
}

if (var.should_run_netacea) {
  call netacea_check_req;
}
</code></pre>

#### Gatilho dividido

O exemplo a seguir fará com que a integração utilize diferentes credenciais Datastream com base no domínio associado à requisição.

```
declare local var.should_run_netacea BOOL;
set var.should_run_netacea = false;

# Must enable Netacea on the following paths if using captcha:
if (!var.should_run_netacea) {
  if (req.url.path ~ "^/AtaVerifyCaptcha|^\/Mitigations\/") {
    set var.should_run_netacea = true;
  }
}

#
if (!var.should_run_netacea) {
  if (req.http.host ~ "example.com") {
    set var.should_run_netacea = true;
    set req.http.x-netacea:edge_config_key_prefix = "dsA_";
  }
}

if (!var.should_run_netacea) {
  if (req.http.host ~ "example2.com") {
    set var.should_run_netacea = true;
    set req.http.x-netacea:edge_config_key_prefix = "dsB_";
  }
}

if (var.should_run_netacea) {
  call netacea_check_req;
}

```

## Atualização do Log Shipping

Por último, pode ser necessário atualizar sua configuração de Shipping com base nos requisitos definidos pela equipe Netacea.
