Mappa delle richieste di terze parti
Aprire una sola pagina di solito significa parlare con una decina di aziende mai sentite nominare. Questa mappa le nomina una per una, dice che tipo di servizio sono e colloca i loro server su una mappa del mondo.
Una pagina è assemblata da tanti server
L’indirizzo nella barra del browser nomina un solo sito, ma l’HTML che torna indietro è in realtà una lista di commissioni. Prendi questo font da Google, questo script da un tag manager, questo lettore video da YouTube. Il browser esegue e apre una connessione verso ciascuno di quegli host. Ogni host che non appartiene al sito che stai visitando è una terza parte.
Nessuna di queste connessioni è anonima. Ognuna porta con sé l’indirizzo IP del visitatore, il browser e il sistema nell’header User-Agent e di norma un header Referer che nomina il sito o la pagina esatta che si sta leggendo. Se la terza parte ha già salvato un cookie in quel browser, su qualsiasi sito, anche il cookie viaggia insieme. Così un’azienda presente su molti siti può riconoscere la stessa persona mentre passa dall’uno all’altro. Spesso il proprietario del sito non ha scelto niente di tutto questo: la richiesta l’ha aggiunta un tema o un plugin.
Come viene disegnata la mappa
Il nostro server scarica la pagina e ne legge il sorgente. Raccoglie gli host nominati in script, fogli di stile, immagini e liste srcset, media, iframe, suggerimenti preconnect e preload, destinazioni dei moduli, valori CSS url() e pixel di tracciamento dentro <noscript>. Quando la pagina carica Google Tag Manager, scarichiamo anche il file del contenitore (al massimo due contenitori) e ci cerchiamo i servizi che può iniettare.
Ogni host viene confrontato con un elenco di circa 120 servizi noti, che fornisce un nome, un proprietario, il paese della sede del proprietario e una categoria. Gli host che non corrispondono a nulla vengono raggruppati per dominio e mostrati come non identificati. Un indirizzo che è solo scritto dentro uno script inline viene tenuto solo se appartiene a un servizio noto, perché gli script citano un sacco di indirizzi che non chiamano mai.
Poi vengono localizzati fino a 40 host. Una query DNS restituisce un indirizzo IP e il servizio IP-to-ASN di Team Cymru restituisce la rete che annuncia quell’indirizzo e il paese in cui il blocco è registrato. La tabella è ordinata dalla categoria più invadente alla meno invadente: pubblicità, analytics, social media, marketing, chat, video, mappe, moduli, pagamenti, font, protezione dai bot, strumenti di consenso, librerie, hosting. Il contatore «Tracciamento» somma le prime quattro.
Tre significati di «dove»
- Dove è registrato il blocco IP
- È quello che mostra la mappa. È un dato amministrativo registrato dai registri regionali di internet.
- Dove si trova la macchina che risponde
- Le grandi reti annunciano lo stesso indirizzo da data center su ogni continente e instradano ogni visitatore verso il più vicino. Un blocco registrato negli Stati Uniti può rispondere da Francoforte a un visitatore in Germania, e i dati possono poi essere copiati altrove.
- Dove ha sede l’azienda
- Indicato come «Sede» nella tabella. Decide quali tribunali e autorità possono pretendere dati dall’azienda, ovunque si trovino le sue macchine.
Le leggi sui trasferimenti internazionali guardano soprattutto al terzo significato e al contratto in essere. Secondo il Capo V del GDPR, i dati personali possono lasciare lo Spazio economico europeo solo verso un paese coperto da una decisione di adeguatezza, oppure con garanzie come le clausole contrattuali standard.
Accorciare la lista
- Togli quello che nessuno usa. I pixel di campagne finite e i widget di plugin disinstallati continuano a fare rapporto per anni.
- Servi da te i file statici. Font, set di icone e librerie di script si possono copiare sul tuo dominio. Con HTTP/2 di solito è più veloce di una CDN pubblica, dato che i browser non condividono più i file in cache tra siti diversi.
- Carica gli embed su richiesta. Mostra un’immagine al posto di un video o di una mappa e carica quello vero al clic. Lo strumento embed con caricamento al clic scrive quel codice.
- Di’ meno a quelli che restano.
Referrer-Policy: strict-origin-when-cross-originmanda alle terze parti il tuo dominio invece dell’indirizzo completo della pagina. - Impedisci alla lista di ricrescere. Un header
Content-Security-Policyfunziona come una lista di autorizzati. Un host che non c’è non può essere chiamato, qualunque cosa aggiunga un plugin.
Gli script non vengono eseguiti. Un servizio che un altro script carica più tardi, o che compare solo dopo che il visitatore accetta i cookie, può mancare, e un host nominato nel sorgente non viene sempre contattato per ogni visitatore. I servizi segnati «invio modulo» ricevono dati solo quando qualcuno invia il modulo. Per vedere quali tracker partono prima del consenso, usa la scansione dei cookie.
Domande frequenti
Che cos’è una richiesta di terze parti?
Una richiesta che il browser fa, mentre carica una pagina, verso un dominio diverso da quello che si sta visitando. Un font da fonts.googleapis.com sul tuo sito lo è. Un’immagine dal tuo stesso sottodominio no.
Un indirizzo IP è un dato personale?
Secondo il GDPR, in generale sì. La Corte di giustizia dell’UE ha stabilito nella causa Breyer (2016) che anche un indirizzo IP dinamico è un dato personale quando chi lo detiene ha mezzi legali per identificare la persona. Anche diverse leggi statali degli Stati Uniti includono gli indirizzi IP tra le informazioni personali.
Perché un’azienda americana appare in un altro paese?
La mappa mostra dove è registrato ogni blocco IP, e le aziende globali hanno blocchi registrati in molti paesi. Il paese della sede dell’azienda è un dato separato, e lo trovi alla riga «Sede» nella tabella.
Caricare script da una CDN è un problema di privacy?
Il gestore della CDN vede l’indirizzo IP di ogni visitatore e il sito da cui arriva. Dipendi da lui anche per la sicurezza, perché chi controlla quel file controlla la tua pagina. Ospitare il file da te evita entrambe le cose. Se tieni la CDN, aggiungi un attributo integrity così un file modificato viene rifiutato.
Come vedo le richieste di terze parti nel mio browser?
Apri gli strumenti per sviluppatori, scegli la scheda Rete (Network) e ricarica la pagina. La colonna Dominio mostra ogni host contattato. Chrome ed Edge hanno un filtro «Richieste di terze parti». Quella vista include anche ciò che caricano gli script, che la nostra mappa non può vedere.
Perché un servizio che uso manca dalla mappa?
Probabilmente viene aggiunto da JavaScript dopo il caricamento della pagina, oppure il tuo banner dei cookie lo trattiene finché il visitatore non accetta. Qui compaiono solo gli host scritti nel sorgente HTML o in un contenitore di Tag Manager.