Rendre des adresses IP anonymes dans Analytics

Dans cet article, vous trouverez une explication technique concernant la méthode utilisée par Analytics pour rendre des adresses IP anonymes.

Résumé

Lorsqu'un utilisateur d'Analytics demande l'anonymisation d'une adresse IP, le système procède à cette opération dès qu'elle est techniquement réalisable, au stade le plus précoce possible du réseau de collecte. La fonctionnalité d'anonymisation d'Analytics permet de remplacer le dernier octet des adresses IP pour les adresses IPv4 et les derniers 80 bits des adresses IPv6 par des zéros dans la mémoire, peu de temps après leur envoi dans le réseau de collecte Analytics. Dans ce cas, l'adresse IP complète n'est jamais écrite sur le disque.

Trois options vous sont proposées lorsque vous créez une propriété, et pour chacune d'entre elles, l'anonymisation de l'adresse IP est mise en œuvre comme suit :

Informations détaillées

Depuis le 25 mai 2010, Analytics fournit la fonctionnalité _anonymizelp dans la bibliothèque JavaScript ga.js (et plus récemment, ga('set', 'anonymizeIp', true) dans la bibliothèque analytics.js). Elle permet aux propriétaires de sites Web de rendre anonymes les adresses IP de tous leurs utilisateurs dans Analytics. Cette fonctionnalité est conçue pour aider les propriétaires de sites à respecter leurs propres règles de confidentialité ou, dans certains pays, les recommandations des autorités locales chargées de la protection des données, qui peuvent les empêcher de stocker les données complètes associées aux adresses IP. L'anonymisation IP ou le masquage IP se produisent dès la réception des données par le réseau de collecte Analytics, avant tout stockage ou traitement des données.

Dans Analytics, le processus d'anonymisation IP se produit au cours de deux étapes du processus de collecte : la balise JavaScript et le réseau de collecte. Ces étapes sont expliquées ci-dessous.

La balise JavaScript Analytics

Lorsqu'un navigateur Web pour lequel JavaScript est activé charge une page incluant la balise Analytics (ga.js ou analytics.js), il effectue deux opérations de façon asynchrone : il charge et traite la file d'attente de fonctions Analytics, et il demande le code JavaScript Analytics. La file d'attente de fonctions est un tableau JavaScript où sont ajoutées les différentes fonctions de collecte et de configuration d'Analytics. Ces fonctions sont définies par le propriétaire du site lorsqu'il met en œuvre Analytics. Elles peuvent permettre de spécifier le numéro de compte Analytics et d'envoyer les données sur les pages vues vers le réseau de collecte Analytics pour qu'elles soient traitées.

Le code JavaScript d'Analytics peut exécuter une fonction de la file d'attente qui déclenche l'envoi de données vers le réseau de collecte Analytics (cette fonction correspond généralement à ga('send', 'pageview') dans la bibliothèque JavaScript analytics.js et à _trackPageview dans la bibliothèque ga.js). Il envoie alors les données en tant que paramètres d'URL associés à une requête HTTP vers http://www.google-analytics.com/_utm.gif (pour ga.js) et http://www.google-analytics.com/collect (pour analytics.js). Si la fonction d'anonymisation a été appelée avant la fonction de suivi de page, un paramètre supplémentaire est ajouté à la requête de pixel. Ce paramètre d'anonymisation d'adresses IP se présente comme suit : &aip=1.

Réseau de collecte Analytics

Le réseau de collecte Analytics correspond à un ensemble de serveurs offrant deux services principaux : la gestion de ga.js et d'analytics.js (code JavaScript Analytics), et la collecte des données envoyées via des requêtes pour _utm.gif et /collect.

Lorsqu'une requête arrive pour ga.js, analytics.js, _utm.gif ou /collect, elle inclut des informations complémentaires dans l'en-tête de la requête HTTP (le type de navigateur utilisé) et dans l'en-tête TCP/IP (l'adresse IP du demandeur).

Dès qu'une requête arrive pour _utm.gif, elle est stockée en mémoire pour l'anonymisation. Si le paramètre &aip=1 se trouve dans l'URL de la requête (de la même façon que s'il avait été placé par le code JavaScript Analytics après le traitement de la fonction d'anonymisation dans les bibliothèques ga.js ou analytics.js), le dernier octet de l'adresse IP de l'utilisateur est remplacé par un zéro tout en restant dans la mémoire. Par exemple, l'adresse IP 12.214.31.144 serait remplacée par 12.214.31.0. Si l'adresse IP est une adresse IPv6, la valeur 0 est attribuée aux 80 derniers des 128 bits. Ce n'est qu'après ce processus d'anonymisation que la demande est écrite sur le disque en vue du traitement. Si la méthode d'anonymisation d'adresses IP est utilisée, l'adresse IP complète n'est jamais écrite sur le disque, car l'intégralité du processus d'anonymisation est effectuée en mémoire presque instantanément, après réception de la demande.

Ces informations vous-ont elles été utiles ?
Comment pouvons-nous l'améliorer ?