Generalización de usuario-agente

Si un editor o un usuario requieren mayor protección de la privacidad, Google podría reducir la cantidad de información proporcionada en los campos del usuario-agente. Cuando se reduce la información, estas representaciones del agente de usuario se consideran generalizadas.

Las representaciones de usuarios-agentes generalizados proporcionan una mayor protección de la privacidad, ya que limitan la información que podría distinguir un navegador o un dispositivo de otros navegadores o dispositivos.

Descripción general

La solicitud de oferta contiene dos representaciones de la información del usuario-agente: la cadena User-Agent que se encuentra en BidRequest.device.ua y el objeto UserAgent que se encuentra en BidRequest.device.sua. Ambos campos contienen información proporcionada por los encabezados HTTP del usuario-agente de la solicitud.

Los usuarios-agente no generalizados pueden contener versiones detalladas del navegador y del sistema operativo, y otros datos detallados que se reducen en la forma generalizada del usuario-agente.

La generalización es retrocompatible con la detección de tipos de navegadores y dispositivos. Las solicitudes de ofertas indican si los campos de usuario-agente se generalizaron en BidRequest.ext.privacy_treatments.

Objeto UserAgent generalizado

En el UserAgent generalizado, los campos version de todas las entradas browser y del platform se reducen para que solo contengan la versión principal. Para ello, se reemplazan todos los componentes de versión más detallados por ceros. No se quita ninguna otra información del objeto UserAgent.

En el siguiente ejemplo, se compara el contenido original de UserAgent.browser con su forma generalizada:

Original brand: "Chrome" version: ["96", "0", "4664", "92"]

Se generalizó el brand: "Chrome" version: ["96", "0", "0", "0"]

Google no siempre generaliza las versiones de los navegadores y las plataformas, en particular cuando el navegador congela la versión completa. Por ejemplo, el siguiente valor de UserAgent.browser no se modificará: brand: "AppleWebKit" version: ["537", "36"].

Cuando se generaliza el objeto UserAgent, la solicitud de oferta también contiene el campo user_agent_data en el objeto PrivacyTreatments:

BidRequest.ext.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }

Cadena User-Agent generalizada

En la cadena User-Agent generalizada, los identificadores de navegador y plataforma se reducen solo a las versiones principales. Por ejemplo, "Chrome/96.0.4664.92" se convierte en "​​Chrome/96.0.0.0". Se conservan los componentes de la versión inmovilizada, como "AppleWebKit/537.36". Estos cambios son equivalentes a los que describimos para el objeto UserAgent.

En el caso de la cadena User-Agent, es posible que también se oculte información o elementos no estándares, como la versión de compilación o de firmware del dispositivo, o ciertos datos específicos de la app que suelen agregarse al final de la cadena.

En el siguiente ejemplo, se compara el contenido original de la cadena User-Agent con su forma generalizada:

Original Mozilla/5.0 (Linux; Android 11; M2007J20CG Build/RKQ1.200826.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.4664.92 Mobile Safari/537.36 [MyApp:CustomSignals:ABC123]

Se generalizó el Mozilla/5.0 (Linux; Android 11; M2007J20CG; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/96.0.0.0 Mobile Safari/537.36

Cuando se generaliza la cadena User-Agent, la solicitud de oferta contiene el indicador user_agent en el objeto PrivacyTreatments:

BidRequest.ext.privacy_treatments: { user_agent: USER_AGENT_COARSE }

Google usa enfoques similares para generalizar la cadena User-Agent y el objeto UserAgent. Como resultado, la cadena User-Agent generalizada y el objeto UserAgent generalizado contienen una cantidad similar de información.