Stručný přehled
Když si zákazník služby Analytics vyžádá anonymizaci IP adres, spustí se tato funkce, jakmile je to technicky možné. Anonymizace IP adres 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 Google 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
Analytics poskytuje vlastníkům webů funkci anonymize_ip (gtag('config', '<GA_MEASUREMENT_ID>', { 'anonymize_ip': true })
v knihovně gtag.js), takže si zde mohou nechat anonymizovat adresy IP všech svých uživatelů. Smyslem je pomáhat vlastníkům webů dodržovat vlastní zásady ochrany soukromí, případně v některých zemích doporučení místních úřadů pro ochranu osobních údajů, neboť zásady a doporučení mohou bránit ukládání úplných údajů o IP adresách. Anonymizace IP adres se provádí ihned po vstupu dat do Google Analytics a ještě předtím, než jsou kamkoliv uložena nebo jakkoliv zpracována.
Proces anonymizace IP adres v 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, 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 vlastník 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 Analytics pro účely zpracování.
Když JavaScript Analytics spustí funkci z fronty, která spouští odeslání údajů do Analytics (obvykle jde o funkci gtag('config', '<GA_MEASUREMENT_ID>'
) v knihovně gtag.js), odešle data jako parametry adresy URL připojené k požadavku HTTP na http://www.google-analytics.com/collect. 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 sestava serverů, které poskytují dvě hlavní služby: obsluhu kódu gtag.js (JavaScript Analytics) a sběr dat zaslaných prostřednictvím požadavků na _utm.gif a /collect.
Když přijde požadavek na gtag.js, obsahuje dodatečné informace v záhlaví HTTP (např. typ používaného prohlížeče) a v záhlaví TCP/IP (např. IP adresu žadatele).
Příchozí požadavek je bezprostředně po příchodu uchován v paměti, aby mohl být případně anonymizován. Pokud se v adrese URL požadavku nachází parametr &aip=1, 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.