# Requisiti di crawling del sito web per i Partner

In qualità di partner, potrebbe essere necessario adottare determinate misure come configurare l'identificazione User-Agent per garantire che i crawler di Regulated Compliance di impact.com possano accedere e recuperare programmativamente i dati dal tuo sito web senza interruzioni e con la corretta autorizzazione. Questa guida è principalmente destinata a sviluppatori, amministratori IT e team tecnici responsabili della gestione dell'accesso al sito web e delle impostazioni di sicurezza.

#### Come consentire il Bot di Regulated Compliance di impact.com

In qualità di partner, il tuo sito web potrebbe essere monitorato dal Bot di Regulated Compliance di impact.com per garantire che contenuti specifici siano conformi al tuo accordo con il/i marchio/i. Ogni elemento monitorato richiede una visita separata al tuo sito, quindi i siti con un alto volume di contenuti monitorati riceveranno proporzionalmente più richieste.

Se il Bot di Regulated Compliance di impact.com è limitato (ad es. restituisce HTTP 429 – Troppe richieste o HTTP 403 – Vietato), potremmo non essere in grado di esaminare e verificare i tuoi contenuti, il che potrebbe influire sulla visibilità della conformità.

**Per garantire un monitoraggio senza interruzioni:**

* Inserisci in allowlist il Bot di Regulated Compliance di impact.com utilizzando lo User-Agent fornito.
* Evita di bloccare o limitare le richieste legittime provenienti dal Bot di Regulated Compliance di impact.com.
* Verifica il Bot di Regulated Compliance di impact.com utilizzando la firma inclusa negli header della richiesta per confermarne l'autenticità e prevenire lo spoofing.
* Consentendo e verificando il Bot di Regulated Compliance di impact.com, contribuisci a garantire che i tuoi contenuti vengano esaminati accuratamente e riflessi nel sistema di impact.com.

#### Identificazione User-Agent

Il nostro crawler utilizza un `User-Agent` personalizzato per identificarsi durante le richieste web. Ciò ti consente, come partner, di distinguere il traffico di conformità di impact.com da altri bot e crawler.

Stringa User-Agent da inserire in allowlist (usare esattamente come mostrato):

```programlisting
Mozilla/5.0 (compatible;Impact.com Agent) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36
```

**Verificare le richieste del crawler di impact.com**

Per confermare che il traffico in arrivo provenga dal crawler di impact.com, ogni richiesta include un header di firma HMAC personalizzato:

```programlisting
X-Impact-Crawler-Signature: <hmac signature>
```

Questa firma ti consente di autenticare la richiesta utilizzando un segreto noto e un algoritmo condiviso. Garantisce che la richiesta abbia avuto origine da impact.com e non sia stata manomessa.

<details>

<summary>Costruzione della firma</summary>

**Costruzione della firma**

Calcoliamo la firma utilizzando il seguente processo:

* **Segreto**: `/impact/crawler/signature/`
* **Dati da firmare**: `User-Agent`
* **Algoritmo HMAC:** `HMAC-SHA256`
* **Output della firma**: `Stringa esadecimale`

</details>

<details>

<summary>Come verificare (pseudocodice)</summary>

```programlisting
const crypto = require('crypto');

// Estrai gli header dalla richiesta in ingresso
const userAgent = req.headers['user-agent'];
const signature = req.headers['x-impact-crawler-signature'];

const secret = '/impact/crawler/signature/';

// Ricalcola la firma
const expectedSignature = crypto
  .createHmac('sha256', secret)
  .update(userAgent)
  .digest('hex');

// Confronta le firme
if (signature === expectedSignature) {
  // ✅ Verificato
} else {
  // ❌ Rifiuta o registra per la revisione
}
```

{% hint style="warning" %}
**Avvertenza:** Assicurati di utilizzare esattamente il `User-Agent` valore così come ricevuto nella richiesta. Qualsiasi modifica come trimming, decodifica o riformattazione comporterà una mancata corrispondenza della firma.
{% endhint %}

</details>

#### Allowlist di IP per il monitoraggio della conformità regolamentata

Per supportare il monitoraggio continuo della Regulated Compliance, inserisci in allowlist i seguenti intervalli di indirizzi IP. Questo garantisce che il traffico proveniente da impact.com non venga bloccato accidentalmente e che il monitoraggio del sito possa procedere senza interruzioni.

**Consenti i seguenti intervalli di IP:**

* 163.116.128.0/17
* 162.10.0.0/17
* 31.186.239.0/24
* 8.39.144.0/24
* 8.36.116.0/24

Consigliamo di aggiornare il tuo firewall o le liste di controllo accessi per consentire il traffico in ingresso dai seguenti intervalli di indirizzi IP di impact.com.

{% hint style="info" %}
**Consigliato:** Per il coordinamento tecnico o domande relative al monitoraggio della Regulated Compliance e all'accesso dei bot, [contatta il supporto](https://app.impact.com/secure/advertiser/support/customer-support-portal-flow.ihtml).
{% endhint %}
