# Installation et configuration

### Prérequis

Pour réussir l'intégration avec Netacea, veuillez vous assurer de disposer des éléments suivants :

1. Une version Fastly 1.2.131 ou supérieure.
2. Un accès aux clés API pertinentes et aux points de terminaison d'envoi de logs dans le [portail Netaeca](https://docs.netacea.com/fr/informations-sur-les-plugins-netacea/accessing-your-integration-settings).
3. La [surveillance ](https://docs.netacea.com/fr/informations-sur-les-plugins-netacea/fastly/monitoring-configuration)a été configurée.

Les clients devront également ouvrir un ticket de support auprès de Fastly pour activer POST dans leur environnement. Nous devons nous assurer que 2 pragmas sont activés sur votre compte Fastly, ceux-ci n'étant pas activés par défaut.

Pragmas requis :

```
Pragma optional_param fix_unsent_body_drain true;
Pragma optional_param no_body_if_bereq_is_get_or_head true;
```

Pour activer les Pragmas, ouvrez un ticket de support auprès du [support Fastly](https://support.fastly.com).

### Étapes d'implémentation

* Connectez-vous à l'interface web Fastly.
* Depuis la page d'accueil, sélectionnez le service approprié. Vous pouvez utiliser la barre de recherche pour effectuer une recherche par ID, nom ou domaine.
* Cliquez sur le bouton Modifier la configuration, puis sélectionnez l'option pour cloner la version active. La page Domaines apparaît.

Toutes les modifications de configuration ci-dessous seront effectuées sur la version nouvellement clonée.

{% hint style="info" %}
Notez la version actuellement active au cas où vous auriez besoin d'effectuer un retour en arrière ultérieurement.
{% endhint %}

### Hôte

Pour permettre au VCL Netacea d'effectuer des appels vers l'API Protector, 2 nouveaux hôtes doivent être configurés avec les détails de Netacea, qui seront appelés dans les [snippets VCL](#vcl-snippets).

* Cliquez sur le lien Origines. La page Origines apparaît.
* Cliquez sur le bouton « Créer un hôte ». Le champ Hôte apparaît.

Renseignez un nouvel hôte avec l'URL suivante et cliquez sur « Ajouter » :

```
mitigations-lbr.netacea.net
```

<figure><img src="https://899558619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaRSpZrGcUHd5EHGjrrO5%2Fuploads%2Fgit-blob-b7c4ea80005bb4ee1bea3868966b361aab551e4a%2FMitSvc2.PNG?alt=media" alt=""><figcaption></figcaption></figure>

Modifiez le nouvel hôte en cliquant sur l'icône du crayon et changez le nom en :

```
MitSvc
```

<figure><img src="https://899558619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaRSpZrGcUHd5EHGjrrO5%2Fuploads%2Fgit-blob-ebf7b118465ac7bef8c82bb7bbd51f4b245fdcf3%2FMitSvc.PNG?alt=media" alt=""><figcaption></figcaption></figure>

Dans le champ Remplacer l'hôte, saisissez la même URL que l'hôte d'origine.

<figure><img src="https://899558619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaRSpZrGcUHd5EHGjrrO5%2Fuploads%2Fgit-blob-7275cea7605b5ffa73dd1f752c9b97abd22a6928%2FScreenshot%202025-04-02%20161507.png?alt=media" alt=""><figcaption></figcaption></figure>

Répétez le processus, renseignez le nouvel hôte avec l'URL suivante et cliquez sur « Ajouter » :

```
assets.ntcacdn.net
```

Modifiez le nouvel hôte en cliquant sur l'icône du crayon et changez le nom en :

```
CaptchaAssets
```

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

### Snippets VCL

Pour que Netacea se déclenche et offre une protection, la solution doit être ajoutée à l'environnement Fastly sous forme de VCL personnalisé.

Le VCL Netacea est divisé en 7 snippets clés : INIT, DELIVER, RECV, ERROR, RECV\_CONFIGURE, PASS et MISS. Chacun doit être ajouté à la configuration des snippets VCL dans Fastly.

{% hint style="info" %}
Netacea fournira le VCL séparément.
{% endhint %}

**INIT :**

* Naviguez vers les snippets VCL dans Fastly.
* Cliquez sur le bouton « Créer un snippet ».
* Donnez au snippet un nom approprié, tel que Netacea\_INIT
* Définissez le type sur « init »

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

* Collez le code INIT dans le VCL
* Aux lignes 4 à 24, vous trouverez un ensemble de champs uniques à chaque déploiement à définir, définissez integration\_type sur le mode approprié.

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

**Champs requis**

<table data-full-width="true"><thead><tr><th width="338">Champ</th><th>Valeur</th></tr></thead><tbody><tr><td>integration_type</td><td>fastly</td></tr><tr><td>integration_version</td><td>&#x3C;Version de l'intégration></td></tr><tr><td>integration_mode</td><td><p>BYPASS - Désactive entièrement l'intégration Netaeca</p><p>INGEST - Mode passif permettant à Netacea de collecter et d'analyser le trafic</p><p>MITIGATE - Mode actif qui effectuera une mitigation basée sur Intent Analytics® de Netaeca</p><p>INJECT - Mode actif pour les clients qui souhaitent recevoir les analyses Netacea sur leur backend et décider des actions à entreprendre.</p></td></tr><tr><td>api_key</td><td>Fournie par le <a href="../accessing-your-integration-settings">portail Netaeca</a></td></tr><tr><td>secret_key</td><td>Fournie par le <a href="../accessing-your-integration-settings">portail Netaeca</a></td></tr><tr><td>encryption_key</td><td>Fournie par le <a href="../accessing-your-integration-settings">portail Netaeca</a></td></tr><tr><td>cookie_name</td><td><p>Un nom approprié pour votre cookie de mitigation.</p><p><strong>Pour une sécurité renforcée, n'incluez pas Netacea ou Mitigation dans ce nom.</strong></p></td></tr><tr><td>captcha_cookie_name</td><td><p>Un nom approprié pour votre cookie de suivi Captcha.</p><p><strong>Pour une sécurité renforcée, n'incluez pas Netacea ou Mitigation dans ce nom.</strong></p></td></tr><tr><td>ignore_list</td><td>Liste de sous-répertoires séparés par des virgules où la mitigation ne doit pas être appliquée. Vous pouvez configurer jusqu'à 5 sous-répertoires ici. Toutes les ressources sous ces répertoires seront ignorées par l'intégration.<br>Ajoutez <code>/media/,/static/</code> par défaut pour assurer une couverture complète de l'intégration tout en ne se déclenchant pas sur le contenu média.</td></tr></tbody></table>

**Champs optionnels - Peuvent être laissés vides sauf indication contraire de l'équipe Netacea**

<table data-full-width="true"><thead><tr><th width="330">Champ</th><th>Valeur</th></tr></thead><tbody><tr><td>real_ip_header_name</td><td><p>Permet aux utilisateurs de personnaliser quel en-tête est utilisé pour l'IP de la requête.</p><p>Laissez <strong>vide par</strong> défaut pour utiliser le champ standard Fastly <code>client.IP</code>.</p></td></tr><tr><td>use_relative_path_captcha_assets</td><td>Si défini sur <code>true</code>, cela garantit que le Captcha est servi sans références au CDN Netacea. Sinon, l'URL complète vers le CDN Netacea sera intégrée dans le HTML du Captcha.<br>Laissez <strong>vide par</strong> défaut pour utiliser le HTML sur tout le site.</td></tr><tr><td>captcha_path</td><td>Permet aux utilisateurs de créer un point de terminaison qui sert toujours le HTML du Captcha. Utile lors de l'implémentation du défi captcha pour les applications mobiles.<br>Laissez <strong>vide par</strong> défaut pour utiliser le chemin /ATAverify.</td></tr><tr><td>captcha_header</td><td>En-tête personnalisé qui indique si la réponse est une page Captcha. Doit être au format <code>name={{nom de l'en-tête}}&#x26;value={{valeur de l'en-tête}}.</code></td></tr><tr><td>enable_captcha_content_negotiation</td><td>Gère le format de la page Captcha. Lorsque défini sur <code>true</code>, il est possible pour l'intégration de retourner la page Captcha sous forme de JSON.<br>Laissez <strong>vide par</strong> défaut pour utiliser le HTML sur tout le site.</td></tr></tbody></table>

<figure><img src="https://899558619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaRSpZrGcUHd5EHGjrrO5%2Fuploads%2Fgit-blob-525038b624bb0310dbd4fb6300b7e9aaa97de335%2Fimage%20(75).png?alt=media" alt=""><figcaption><p>Exemple de configuration valide</p></figcaption></figure>

Sous les options avancées, définissez la priorité sur 45.

<figure><img src="https://899558619-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FaRSpZrGcUHd5EHGjrrO5%2Fuploads%2Fgit-blob-12a5a2fad7d4b0e708596b3fff9f04279f7e7fbd%2Fimage%20(3)%20(1)%20(2)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

**RECV** :

* Cliquez sur le bouton « Créer un snippet »
* Donnez au snippet un nom approprié, tel que Netacea\_RECV
* Définissez le type sur « within subroutine » et « recv (vcl\_recv) »
* Collez le code RECV dans le VCL
* Définissez la priorité sur 45

**DELIVER**

* Cliquez sur le bouton « Créer un snippet »
* Donnez au snippet un nom approprié, tel que Netacea\_DELIVER
* Définissez le type sur « within subroutine » et « deliver (vcl\_deliver) »
* Collez le code DELIVER dans le VCL
* Définissez la priorité sur 45

**ERROR :**

* Cliquez sur le bouton « Créer un snippet »
* Donnez au snippet un nom approprié, tel que Netacea\_ERROR
* Définissez le type sur « within subroutine » et « error (vcl\_
