Pe scurt
Atunci când un client Google Analytics universal solicită mascarea adreselor IP, Analytics trunchiază adresa cât mai curând posibil, în limitele tehnice permise. Funcția de mascare a adreselor IP din Google Analytics universal setează valoarea zero în memorie pentru ultimul octet din adresele IP ale utilizatorilor IPv4 și ultimii 80 de biți din adresele IPv6, la scurt timp după ce sunt trimise la Google Analytics. În acest caz, adresa IP completă nu este scrisă niciodată pe disc.
Parametrii geografici sunt extrași ulterior din adrese IP trunchiate.
În Google Analytics universal, mascarea adreselor IP este activată și este implementată în modul prezentat în secțiunea „În detaliu” de mai jos.
În detaliu
Analytics oferă funcția anonymize_ip (gtag('config', '<GA_MEASUREMENT_ID>', { 'anonymize_ip': true })
din biblioteca gtag.js) pentru a le permite proprietarilor de site-uri să solicite ca toate adresele IP ale utilizatorilor să fie mascate în produs. Această funcție ajută proprietarii de site-uri să își respecte politicile de confidențialitate sau, în unele țări, recomandările din partea autorităților locale de protecție a datelor, care pot împiedica stocarea de date cu adresa IP completă. Trunchierea / mascarea adreselor IP are loc imediat după ce Google Analytics primește datele, înainte de stocarea sau procesarea lor.
Mascarea adreselor IP din Google Analytics are loc în două etape din procesul de colectare: eticheta JavaScript și rețeaua de colectare. Aceste etape sunt explicate mai jos.
Eticheta JavaScript Analytics
Atunci când un browser web compatibil cu JavaScript încarcă o pagină cu eticheta Analytics, acesta face asincron două lucruri: încarcă și procesează coada de funcții din Analytics și solicită JavaScript Analytics. Coada de funcții este un vector JavaScript în care sunt introduse funcțiile de colectare și configurare Analytics. Printre aceste funcții, configurate de proprietarul site-ului la implementarea Analytics, se pot număra menționarea numărului contului Analytics sau transmiterea efectivă de date privind afișările de pagină către Google Analytics, pentru prelucrare.
Când JavaScript Analytics rulează, din coada de funcții, o funcție care declanșează date care urmează să fie trimise către Google Analytics (această funcție este, de obicei, gtag('config', '<GA_MEASUREMENT_ID>'
) în biblioteca gtag.js), datele se trimit ca parametri URL atașați unei solicitări HTTP pentru http://www.google-analytics.com/collect. Dacă funcția de mascare este apelată înaintea funcției de urmărire a paginii, la solicitarea de pixeli este adăugat un parametru suplimentar. Parametrul de mascare a adresei IP arată astfel:
&aip=1
Rețeaua de colectare Analytics
Rețeaua de colectare de date Analytics reprezintă setul de servere care oferă două servicii principale: difuzarea etichetei gtag.js (JavaScript Analytics) și colectarea datelor trimise prin solicitări pentru /collect.
Când se primește o solicitare pentru eticheta gtag.js, aceasta include informații suplimentare în antetul solicitării HTTP (adică tipul browserului folosit) și în antetul TCP/IP (adică adresa IP a solicitantului).
După primirea unei solicitări, aceasta este stocată în memorie pentru trunchiere. Dacă parametrul &aip=1 este identificat în adresa URL a solicitării, pentru ultimul octet din adresa IP a utilizatorului este setată valoarea zero cât timp este încă în memorie. De exemplu, adresa IP 12.214.31.144 ar fi schimbată în 12.214.31.0. (Dacă adresa IP este o adresă IPv6, pentru ultimii 80 din cei 128 de biți va fi setată valoarea zero.) Solicitarea va fi scrisă pe disc pentru procesare numai după finalizarea procesului de trunchiere. Dacă se folosește metoda de mascare a adreselor IP, adresa IP completă nu va fi scrisă niciodată pe disc, întrucât procesul de trunchiere are loc în întregime în memorie, aproape imediat după primirea solicitării.