Анонимизация IP-адресов в Analytics

Описание системы анонимизации IP-адресов в Analytics

Коротко о главном

Если пользователь Analytics запрашивает анонимизацию IP, наша система скрывает адрес при первой технической возможности на максимально ранней стадии сбора данных. Последний октет IPv4-адреса или последние 80 бит IPv6-адреса обнуляются после передачи информации в сеть сбора данных Analytics. Полный IP-адрес никогда не записывается на диски в нашей системе.

Подробное описание

C 25 мая 2010 года система Analytics поддерживает функцию _anonymizelp в ga.js (и с недавних пор ga('set', 'anonymizeIp', true) в analytics.js), которая позволяет владельцам сайтов скрывать IP-адреса своих посетителей при обработке данных в нашей системе. Анонимизация и частичное хранение IP-адресов помогают выполнять требования по защите личных данных, включая как политики конфиденциальности самих ресурсов, так и государственные законы. Адрес маскируется сразу же, как только поступает в сеть сбора данных Analytics, до обработки и хранения.

Анонимизация IP-адресов в Analytics выполняется в два этапа: на уровне тегов JavaScript и сети сбора данных. Ниже эта процедура описана подробнее.

JavaScript-тег Analytics

Когда браузер, в котором включена поддержка JavaScript, загружает страницу с тегом Analytics (ga.js или analytics.js), асинхронно происходят два действия: загружается для обработки очередь функций и запрашивается JavaScript-код. Очередь функций – это массив JavaScript, в который принудительно передаются различные функции сбора данных и настройки Analytics. К таким функциям, которые задаются владельцем сайта при внедрении Analytics, могут относиться указание номера аккаунта и отправка информации о просмотрах страниц в сеть сбора данных Analytics.

Когда JavaScript-код Analytics выполняет функцию из этой очереди, активируется отправка данных в сеть сбора Analytics (обычно это функция ga('send', 'pageview') в JavaScript-библиотеке analytics.js и _trackPageview в библиотеке ga.js). Данные передаются как параметры URL, добавленные к HTTP-запросу http://www.google-analytics.com/_utm.gif (для ga.js) и http://www.google-analytics.com/collect (для analytics.js). Если функция анонимизации была вызвана до функции отслеживания страницы, то к запросу пикселя прикрепляется дополнительный параметр анонимизации IP-адреса (&aip=1).

Сеть сбора данных Analytics

В сеть сбора данных Analytics объединены серверы, которые выполняют две основные задачи: обслуживают ga.js и analytics.js (JavaScript-коды Analytics) и собирают данные, которые передаются в запросах _utm.gif и /collect.

Поступающий запрос файла ga.js, analytics.js, _utm.gif или /collect содержит дополнительную информацию в заголовке HTTP-запроса (например, используемый браузер) и в заголовке TCP/IP (например, IP-адрес источника запроса).

Как только запрос _utm.gif поступает в систему, он передается в память для анонимизации. Если его URL содержит параметр &aip=1 (который добавляется JavaScript-кодом Analytics после обработки функции анонимизации в ga.js или analytics.js), то последний октет IP-адреса посетителя обнуляется прямо в памяти. Например, значение 12.214.31.144 меняется на 12.214.31.0 (для IPv6-адресов обнуляются последние 80 из 128 бит). Только после такой анонимизации запрос записывается на диск для обработки. Фактически при использовании функции маскировки полный адрес никогда не хранится в системе, а обнуление его части происходит в памяти сразу же после получения запроса.

Была ли эта статья полезна?
Как можно улучшить эту статью?