De un vistazo
Cuando un cliente de Universal Analytics solicita el enmascaramiento de la dirección IP, Analytics trunca la dirección tan pronto como sea técnicamente posible. La función de enmascaramiento de IP en Universal Analytics establece en cero en la memoria el último octeto de las direcciones IP de usuario IPv4 y los últimos 80 bits de las direcciones IPv6 poco después de enviarse a Google Analytics. En este caso, la dirección IP completa nunca se escribe en el disco.
Luego, las dimensiones geográficas se derivan de direcciones IP truncadas.
En Universal Analytics, el enmascaramiento de la dirección IP está habilitado y se implementa como se describe en la sección "En detalle" a continuación.
En detalle
Analytics proporciona la función anonymize_ip (gtag('config', '<GA_MEASUREMENT_ID>', { 'anonymize_ip': true })
en la biblioteca de gtag.js) para permitir que los propietarios de sitios web soliciten que se enmascaren todas las direcciones IP de sus usuarios dentro del producto. Esta función está diseñada para ayudar a los propietarios de sitios web a satisfacer sus propias políticas de privacidad o, en algunos países, cumplir con las recomendaciones de las agencias de protección de datos locales que pueden impedir el almacenamiento de la información de las direcciones IP completas. El truncamiento o enmascaramiento de IP se produce en cuanto Google Analytics recibe los datos, antes de que se almacenen o procesen.
El proceso de enmascaramiento de IP en Analytics se realiza en dos pasos en la canalización de la recopilación: la etiqueta de JavaScript y la Red de recopilación. Estos pasos se explican a continuación:
Etiqueta de JavaScript de Analytics
Cuando un navegador web con JavaScript habilitado carga una página con la etiqueta de Analytics, hace dos cosas de forma asíncrona: carga y procesa la cola de funciones de Analytics, y solicita la etiqueta de JavaScript de Analytics. La cola de funciones es un array de JavaScript en el que se envían las diferentes funciones de configuración y recopilación de Analytics. Estas funciones, que las configura el propietario del sitio cuando implementa Analytics, pueden incluir la especificación del número de cuenta de Analytics y el envío de datos de páginas vistas a Google Analytics para su procesamiento.
Cuando la etiqueta de JavaScript de Analytics ejecuta una función de la cola de funciones que activa el envío de datos a Google Analytics (esta función suele ser gtag('config', '<GA_MEASUREMENT_ID>'
) en la biblioteca de gtag.js), envía los datos como parámetros de URL adjuntados a una solicitud HTTP para http://www.google-analytics.com/collect. Si la función de enmascaramiento se llamó antes de la función de seguimiento de la página, se agregará un parámetro adicional a la solicitud de píxel. El parámetro de enmascaramiento de IP se ve de la siguiente manera:
&aip=1
Red de recopilación de Analytics
La Red de recopilación de Analytics es el conjunto de servidores que proporcionan dos servicios principales: la entrega de gtag.js (la etiqueta de JavaScript de Analytics) y la recopilación de datos enviados a través de solicitudes de /collect.
Cuando llega una solicitud de gtag.js, incluye información adicional en el encabezado de la solicitud HTTP (es decir, el tipo de navegador que se usa) y el encabezado de TCP/IP (es decir, la dirección IP del solicitante).
En cuanto llega una solicitud, se conserva en la memoria para el truncamiento. Si el parámetro &aip=1 se encuentra en la URL de la solicitud, el último octeto de la dirección IP del usuario se establece en cero mientras permanece en la memoria. Por ejemplo, la dirección IP 12.214.31.144 se cambiaría a 12.214.31.0. (Si la dirección IP es una dirección IPv6, los últimos 80 de los 128 bits se establecen en cero). Solo después de este proceso de truncamiento la solicitud se escribe en el disco para su procesamiento. Si se usa el método de truncamiento de IP, en ningún momento se escribe la dirección IP completa en el disco, ya que todo el truncamiento ocurre en la memoria casi inmediatamente después de que se recibe la solicitud.