Se un editore o un utente richiedono maggiori protezioni della privacy, Google potrebbe ridurre la quantità di informazioni fornite nei campi dello user agent. Quando le informazioni vengono ridotte, queste rappresentazioni dello user agent sono considerate generalizzate.
Le rappresentazioni generalizzate dello user agent forniscono maggiori protezioni della privacy limitando le informazioni che potrebbero distinguere un determinato browser o dispositivo da altri browser o dispositivi.
Panoramica
La richiesta di offerta contiene due rappresentazioni delle informazioni dello user agent:
la stringa User-Agent
e l'oggetto UserAgent
(protocollo Google,
OpenRTB).
Entrambi i campi contengono informazioni fornite dalle intestazioni HTTP dello user agent della richiesta.
Gli user agent non generalizzati possono contenere versioni granulari del browser e del sistema operativo, nonché altri dati dettagliati ridotti sotto forma di user agent.
La generalizzazione è compatibile con le versioni precedenti per il rilevamento del browser e del tipo di dispositivo.
Le richieste di offerta indicano se i campi user agent sono stati generalizzati nei campi PrivacyTreatments
(protocollo Google, OpenRTB).
Oggetto UserAgent generalizzato
Nella versione UserAgent
generalizzata, i campi version
di tutte le voci browser
e di platform
vengono ridotti per contenere solo la versione principale,
sostituendo con zeri i componenti della versione più granulari. Nessun'altra informazione
nell'oggetto UserAgent
viene rimossa.
L'esempio seguente confronta i contenuti originali di UserAgent.browser
con la sua forma generalizzata:
Originale
brand: "Chrome" version: ["96", "0", "4664", "92"]
Generalizzata
brand: "Chrome" version: ["96", "0", "0", "0"]
Google non sempre generalizza le versioni del browser e della piattaforma, in particolare quando la versione completa viene bloccata dal browser. Ad esempio, il seguente valore di UserAgent.browser
non verrà modificato: brand: "AppleWebKit" version: ["537", "36"]
.
Quando l'oggetto UserAgent
è generalizzato, la richiesta di offerta contiene anche il
campo user_agent_data
nell'oggetto PrivacyTreatments
:
Protocollo Google
BidRequest.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }
Protocollo OpenRTB
BidRequest.ext.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }
Stringa User-Agent
generalizzata
Nella stringa User-Agent
generalizzata, gli identificatori di browser e piattaforma sono
ridotti solo alle versioni principali. Ad esempio, "Chrome/96.0.4664.92"
diventa "Chrome/96.0.0.0"
. I componenti della versione bloccata, come "AppleWebKit/537.36"
, vengono conservati. Queste modifiche corrispondono a quanto descritto per l'oggetto UserAgent
.
Nel caso della stringa user-Agent
, potrebbero essere oscurati anche alcuni dettagli o elementi non standard, ad esempio la versione della build o del firmware del dispositivo oppure alcuni dati specifici dell'app che vengono spesso aggiunti alla fine della stringa.
L'esempio seguente confronta i contenuti originali della stringa User-Agent
con la sua forma generalizzata:
Originale
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]
Generalizzata
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
Quando la stringa User-Agent
è generalizzata, la richiesta di offerta contiene l'indicatore user_agent
nell'oggetto PrivacyTreatments
:
Protocollo Google
BidRequest.privacy_treatments: { user_agent: USER_AGENT_COARSENED }
Protocollo OpenRTB
BidRequest.ext.privacy_treatments: { user_agent: USER_AGENT_COARSENED }
Google utilizza approcci simili per generalizzare la stringa User-Agent
e
l'oggetto UserAgent
. Di conseguenza, la stringa User-Agent
generalizzata e
l'oggetto UserAgent
generalizzato portano una quantità di informazioni simile.