Stručný přehled
Když si zákazník služby Analytics vyžádá anonymizaci IP adres, začne služba adresy anonymizovat v co nejranější možné fázi sběrné sítě, jakmile je to technicky možné. Funkce anonymizace IP v Analytics vynuluje poslední oktet (u adres IPv4) nebo posledních 80 bitů (u adres IPv6) uživatelských IP adres krátce poté, co je adresa odeslána do sběrné sítě Analytics. V tomto případě se kompletní IP adresa nikdy nezapisuje na disk.
Když vytvoříte službu, anonymizace IP adres se implementuje následovně:
- Google Analytics 4 (shromažďování údajů z vašich aplikací nebo webu): Anonymizace IP adres je vždy aktivní. V případě použití této možnosti jsou údaje z aplikací shromažďovány pomocí sad Firebase SDK a údaje z webu pomocí globální značky webu, jež obsahuje ID měření streamu dat webu.
- Universal Analytics (shromažďování údajů z vašeho webu): K anonymizaci IP adres je nutné se přihlásit a implementuje se způsobem popsaným níže v části Podrobný rozbor.
Podrobný rozbor
Od 25. května 2010 nabízí Analytics funkci _anonymizeIp v javascriptové knihovně ga.js (a nověji i funkci ga('set', 'anonymizeIp', true) v knihovně analytics.js), aby si vlastníci webových stránek mohli vyžádat, že IP adresy všech jejich uživatelů budou v rámci služby anonymizovány. Smyslem této funkce je napomáhat dodržování vlastních zásad ochrany soukromí ze strany majitelů webů, případně v některých zemích doporučení místních úřadů pro ochranu osobních údajů, neboť takové zásady či taková doporučení mohou bránit ukládání úplných údajů o IP adresách. Anonymizace či maskování IP adres je prováděno bezprostředně po vstupu dat do sběrné sítě Analytics a ještě předtím, než jsou kamkoliv uložena nebo jakkoliv zpracována.
Proces anonymizace IP adres ve službě Analytics probíhá ve sběrném toku ve dvou krocích, kterými jsou značka JavaScript a sběrná síť. Tyto kroky jsou vysvětleny níže.
JavaScriptová značka Analytics
Když webový prohlížeč podporující JavaScript načte stránku se značkou Analytics (ga.js nebo analytics.js), provádí asynchronně dva úkony: načítá a zpracovává funkční frontu Analytics a vysílá požadavek JavaScript služby Analytics. Funkční fronta je JavaScriptové pole, kam jsou uložena různá nastavení a sběrné funkce Analytics. Tyto funkce, které nastavuje majitel webu při implementaci služby Analytics, mohou zahrnovat například určení čísla účtu Analytics či vlastní odesílání údajů o zobrazení stránky do sběrné sítě Analytics pro účely zpracování.
Když Analytics JavaScript spustí z fronty funkci, jež spouští odesílání údajů do sběrné sítě Analytics (obvykle jde o funkci ga ('send', 'pageview') v knihovně JavaScript analytics.js a _trackPageview v knihovně ga. js), odesílají se údaje jako parametry adresy URL připojené k požadavku HTTP na http://www.google-analytics.com/_utm.gif (v případě knihovny ga.js) a http://www.google-analytics.com/collect (v případě knihovny analytics.js). Pokud byla anonymizační funkce zavolána ještě před funkcí měření stránky, je k žádosti o pixel připojen další parametr. Parametr anonymizace IP adres vypadá takto:
&aip=1
Sběrná síť Analytics
Sběrná síť Analytics je skupina serverů, které zajišťují dvě hlavní funkce: poskytují knihovny ga.js a analytics.js (JavaScriptovou knihovnu Analytics) a shromažďují údaje zaslané prostřednictvím požadavků na _utm.gif a /collect.
Když je přijat požadavek na ga.js, analytics.js, _utm.gif nebo /collect, obsahuje dodatečné informace v záhlaví požadavku HTTP (např. typ používaného prohlížeče) a v záhlaví TCP/IP (např. IP adresu žadatele).
Obdržený požadavek na _utm.gif je bezprostředně po příchodu uchován v paměti, aby mohl být případně anonymizován. Je-li v adrese URL požadavku nalezen parametr &aip=1 (vložený JavaScriptem Google Analytics po zpracování anonymizační funkce v knihovně ga.js nebo analytics.js), je poslední oktet IP adresy ještě v paměti vynulován. Například IP adresa 12.214.31.144 by se takto změnila na 12.214.31.0. (Jde-li o adresu IPv6, je vynulováno posledních 80 z jejích 128 bitů.) Teprve po procesu anonymizace je požadavek zapsán na disk pro zpracování. Při použití metody anonymizace IP adres se kompletní IP adresa nikdy nezapisuje na disk. K anonymizaci totiž dochází v paměti téměř okamžitě po obdržení požadavku.