"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Redução do agente do usuário no Chrome, Safari e Firefox

Redução do agente do usuário no Chrome, Safari e Firefox

Publicado em 2024-08-06
Navegar:616

User Agent Reduction in Chrome, Safari & Firefox

Introdução: o que são redução de agente de usuário e dicas de cliente?

Nos últimos anos, as preocupações com a privacidade geraram mudanças significativas na forma como os navegadores lidam com strings de User-Agent. Tradicionalmente usadas para identificar informações do navegador e do dispositivo, as strings User-Agent foram reduzidas para limitar a quantidade de informações compartilhadas, protegendo assim a privacidade do usuário. Para resolver as limitações da redução do User-Agent, as Client Hints surgiram como uma solução, fornecendo uma forma mais controlada e que respeita a privacidade de compartilhar as informações necessárias.

Leia a postagem completa do blog aqui

Uma breve história das strings do agente do usuário

Strings User-Agent remontam aos primórdios dos navegadores da web, começando com WorldWideWeb de Tim Berners-Lee. Inicialmente, eles eram simples, fornecendo informações básicas sobre navegador e versão. Com o tempo, eles evoluíram para incluir dados detalhados sobre o sistema operacional, tipo de dispositivo e muito mais, o que se mostrou útil para análise da web e otimização da experiência do usuário. No entanto, esse detalhe também permitiu a impressão digital do dispositivo, levantando questões de privacidade.

O que é redução de agente de usuário?

A redução do User-Agent visa minimizar as informações nas strings do User-Agent para proteger a privacidade do usuário. Informações de alta entropia, como versões específicas de sistema operacional e modelos de hardware, são reduzidas. Por exemplo, o Chrome do Google agora relata uma string User-Agent menos detalhada:

  • Antes: Mozilla/5.0 (Linux; Android 13; Pixel 7) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/95.2.1.0 Mobile Safari/537.36
  • Depois: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/95.0.0.0 Mobile Safari/537.36

Da mesma forma, Firefox e Safari implementaram suas próprias versões de redução de User-Agent, embora com pequenas diferenças com base em suas políticas exclusivas.

Como funcionam as dicas do cliente?

As dicas do cliente fornecem uma maneira de solicitar informações específicas e de alta entropia sobre o dispositivo e o navegador do usuário de maneira preocupada com a privacidade. Existem dois métodos principais para acessar as dicas do cliente:

  1. Cabeçalhos de solicitação HTTP: Os sites podem solicitar informações específicas sobre o navegador e o dispositivo do usuário usando cabeçalhos de solicitação HTTP. Isso normalmente é usado em contextos próprios, garantindo que informações detalhadas do usuário sejam acessíveis apenas ao site principal, e não a recursos de terceiros.
  2. API JavaScript: Dicas de cliente também podem ser acessadas por meio do objeto navigator.userAgentData em JavaScript. Isso permite consultas dinâmicas de informações específicas, como arquitetura, modelo e versão da plataforma, sem definir cabeçalhos adicionais.

Implementando dicas do cliente

Usando cabeçalhos de solicitação HTTP

Para implementar dicas de cliente por meio de cabeçalhos HTTP, o servidor precisa definir os cabeçalhos apropriados na resposta HTTP, sinalizando ao navegador para incluir essas dicas em solicitações futuras. Por exemplo:

Accept-CH: Sec-CH-UA-Platform-Version

As solicitações subsequentes do navegador incluirão a versão da plataforma:

Sec-CH-UA-Platform-Version: "14.5.0"

Usando API JavaScript

Para aplicativos dinâmicos, a API JavaScript oferece flexibilidade. Por exemplo, usando o método getHighEntropyValues:

if (navigator.userAgentData) {
    navigator.userAgentData.getHighEntropyValues(['architecture', 'model', 'platformVersion'])
        .then(ua => {
            console.log(ua);
        });
}

Recomendações para desenvolvedores

Dependendo de suas necessidades específicas, você pode escolher diferentes métodos para coletar dados do ambiente do usuário:

  • Detecção de recursos: Use APIs JavaScript de navegador existentes sempre que possível. Isso é mais confiável e preparado para o futuro do que depender de strings User-Agent.
  • Informações de baixa entropia: Para detalhes básicos como tipo de dispositivo, a string User-Agent ainda pode ser suficiente.
  • Informações de alta entropia: Use dicas do cliente se informações detalhadas forem necessárias e você tiver controle sobre o domínio.

Conclusão

A redução do agente do usuário e as dicas do cliente representam etapas significativas para melhorar a privacidade do usuário e, ao mesmo tempo, permitir que os sites reúnam as informações necessárias para uma funcionalidade ideal. Ao compreender e implementar essas tecnologias, os desenvolvedores podem equilibrar a necessidade de dados detalhados do usuário com considerações de privacidade e desempenho.

Saiba mais em nossa postagem detalhada do blog.

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/corbado/user-agent-reduction-in-chrome-safari-firefox-3g6g?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3