Se um publisher ou usuário precisar de mais proteções de privacidade, o Google poderá reduzir a quantidade de informações fornecidas nos campos do user agent. Quando as informações são reduzidas, essas representações de user agent são consideradas generalizadas.
As representações generalizadas de user agent oferecem mais proteções de privacidade ao limitar as informações que podem distinguir um navegador ou dispositivo de outros.
Visão geral
A solicitação de lance contém duas representações de informações do user agent: a string User-Agent encontrada em BidRequest.device.ua e o objeto UserAgent encontrado em BidRequest.device.sua. Os dois campos contêm informações fornecidas pelos cabeçalhos HTTP do user agent da solicitação.
Os user agents não generalizados podem conter versões granulares do navegador e do sistema operacional, além de outros dados detalhados que são reduzidos na forma generalizada do user agent.
A generalização é compatível com versões anteriores para detecção de tipo de navegador e dispositivo.
As solicitações de lance indicam se os campos do user agent foram generalizados em
BidRequest.ext.privacy_treatments.
Objeto UserAgent generalizado
No UserAgent generalizado, os campos version de todas as entradas browser e do platform são reduzidos para conter apenas a versão principal, substituindo por zeros todos os componentes de versão mais refinados. Nenhuma outra informação
no objeto UserAgent é removida.
O exemplo a seguir compara o conteúdo original de UserAgent.browser com
a forma generalizada dele:
Original
brand: "Chrome" version: ["96", "0", "4664", "92"]
Generalizado
brand: "Chrome" version: ["96", "0", "0", "0"]
O Google nem sempre generaliza as versões de navegador e plataforma, principalmente quando a versão completa é congelada pelo navegador. Por exemplo, o valor a seguir de UserAgent.browser não será modificado: brand: "AppleWebKit" version: ["537", "36"].
Quando o objeto UserAgent é generalizado, a solicitação de bid também contém o campo user_agent_data no objeto PrivacyTreatments:
BidRequest.ext.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }
String User-Agent generalizada
Na string User-Agent generalizada, os identificadores de navegador e plataforma são reduzidos apenas às versões principais. Por exemplo, "Chrome/96.0.4664.92"
se torna "Chrome/96.0.0.0". Os componentes de versão congelada, como
"AppleWebKit/537.36", são preservados. Essas mudanças são equivalentes ao que descrevemos para o objeto UserAgent.
Exclusivo da string User-Agent, alguns detalhes ou elementos não padrão também podem ser censurados, por exemplo, a versão do build ou do firmware do dispositivo ou determinados dados específicos do app que geralmente são adicionados ao final da string.
O exemplo a seguir compara o conteúdo original da string User-Agent
com a forma generalizada dela:
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]
Generalizado
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 a string User-Agent é generalizada, a solicitação de lance contém o
indicador user_agent no objeto PrivacyTreatments:
BidRequest.ext.privacy_treatments: { user_agent: USER_AGENT_COARSE }
O Google usa abordagens semelhantes para generalizar a string User-Agent e o objeto UserAgent. Como resultado, a string User-Agent generalizada e o objeto UserAgent generalizado carregam uma quantidade semelhante de informações.