IP anonimizācija pakalpojumā Analytics

Tehnisks skaidrojums par to, kā pakalpojumā Analytics tiek anonimizētas IP adreses

Īsumā

Kad Analytics klients pieprasa IP adreses anonimizāciju, Analytics adresi anonimizē pēc iespējas agrīnākā apkopošanas tīkla posmā, tiklīdz tas ir tehniski iespējams. Drīz pēc nosūtīšanas uz Analytics apkopošanas tīklu Analytics IP anonimizācijas funkcija IPv4 lietotāja IP adreses pēdējo oktetu un IPv6 adreses pēdējos 80 bitus atmiņā iestata uz nulli. Šajā gadījumā diskā netiek ierakstīta pilna IP adrese.

Detalizēti

Pakalpojumā Analytics kopš 2010. gada 25. maija tiek nodrošināta funkcija _anonymizelp ga.js JavaScript bibliotēkā (un pēdējā laikā arī ga('set', 'anonymizeIp', true) analytics.js bibliotēkā), lai tīmekļa vietņu īpašniekiem atļautu pieprasīt visu savu apmeklētāju IP adrešu anonimizāciju šajā produktā. Šī funkcija ir izstrādāta, lai palīdzētu vietņu īpašniekiem nodrošināt atbilstību savām konfidencialitātes politikām vai dažu valstu vietējo datu aizsardzības iestāžu ieteikumiem, saskaņā ar kuriem nevar saglabāt pilnu IP adreses informāciju. IP anonimizācija/maskēšana notiek, tiklīdz Analytics apkopošanas tīkls saņem datus — pirms to saglabāšanas vai apstrādes.

IP anonimizācijas process pakalpojumā Analytics apkopošanas ceļā tiek veikts divos posmos: JavaScript tagā un apkopošanas tīklā. Šie posmi ir aprakstīti tālāk.

Analytics JavaScript tags

Kad tīmekļa pārlūkprogramma ar iespējotu JavaScript ielādē lapu ar Analytics tagu (ga.js vai analytics.js), asinhroni tiek izpildītas divas darbības: ielādēta un apstrādāta funkciju rinda un pieprasīta Analytics JavaScript. Funkciju rinda ir JavaScript masīvs, kurā tiek ievietotas dažādas Analytics konfigurācijas un apkopošanas funkcijas. Šīs funkcijas, ko nosaka vietnes īpašnieks, ieviešot pakalpojumu Analytics, var būt, piemēram, Analytics konta numura noteikšana un faktiska lapu skatījumu datu sūtīšana uz Analytics apkopošanas tīklu apstrādei.

Kad Analytics JavaScript izpilda funkciju no funkciju rindas, kas aktivizē datu nosūtīšanu uz Analytics apkopošanas tīklu (parasti šī funkcija ir ga('send', 'pageview') analytics.js JavaScript bibliotēkā un _trackPageview the ga.js bibliotēkā), dati tiek nosūtīti kā URL parametri, kas pievienoti http://www.google-analytics.com/_utm.gif (ga.js) un http://www.google-analytics.com/collect (analytics.js) HTTP pieprasījumam. Ja anonimizācijas funkcija ir izsaukta pirms lapas izsekošanas funkcijas, pikseļu pieprasījumam tiek pievienots papildu parametrs. IP anonimizācijas parametrs izskatās šādi: &aip=1

Analytics apkopošanas tīkls

Analytics apkopošanas tīkls ir serveru kopa, kas nodrošina divus galvenos pakalpojumus: nodrošina tagus ga.js un analytics.js (Analytics JavaScript) un apkopo nosūtītos datus, izmantojot _utm.gif un /collect pieprasījumus.

Kad tiek saņemts ga.js, analytics.js, _utm.gif vai /collect pieprasījums, tas iekļauj papildu informāciju HTTP pieprasījuma galvenē (piemēram, izmantotās pārlūkprogrammas veidu) un TCP/IP galvenē (piemēram, pieprasītāja IP adresi).

Tiklīdz tiek saņemts _utm.gif pieprasījums, tas tiek saglabāts atmiņā, lai veiktu anonimizāciju. Ja pieprasījuma vietrādī URL tiek atrasts parametrs &aip=1 (tā, kā to ievietotu Analytics JavaScript pēc anonimizācijas funkcijas apstrādes tagā ga.js vai analytics.js), pēdējais lietotāja IP adreses oktets tiek iestatīts uz nulli, tomēr paliek atmiņā. Piemēram, IP adrese 12.214.31.144 tiktu mainīta šādi: 12.214.31.0. (Ja IP adrese ir IPv6 adrese, uz nulli tiek iestatīti pēdējie 80 no 128 bitiem.) Tikai pēc anonimizācijas procesa pabeigšanas pieprasījums tiek ierakstīts diskā, lai veiktu apstrādi. Ja tiek izmantota IP anonimizācijas metode, pilna IP adrese diskā netiek ierakstīta, jo viss anonimizācijas process notiek atmiņā gandrīz nekavējoties pēc pieprasījuma saņemšanas.

Vai tas bija noderīgs?
Kā varam to uzlabot?