"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Réduction des agents utilisateurs dans Chrome, Safari et Firefox

Réduction des agents utilisateurs dans Chrome, Safari et Firefox

Publié le 2024-08-06
Parcourir:780

User Agent Reduction in Chrome, Safari & Firefox

Introduction : Que sont la réduction des agents utilisateurs et les conseils client ?

Ces dernières années, les problèmes de confidentialité ont entraîné des changements importants dans la façon dont les navigateurs gèrent les chaînes User-Agent. Traditionnellement utilisées pour identifier les informations du navigateur et de l'appareil, les chaînes User-Agent ont été réduites pour limiter la quantité d'informations partagées, protégeant ainsi la confidentialité des utilisateurs. Pour remédier aux limites de la réduction des agents utilisateurs, les conseils client sont apparus comme une solution, offrant un moyen plus contrôlé et plus respectueux de la vie privée de partager les informations nécessaires.

Lisez l'article de blog complet ici

Un bref historique des chaînes d'agent utilisateur

Les chaînes User-Agent remontent aux débuts des navigateurs Web, à commencer par le WorldWideWeb de Tim Berners-Lee. Au départ, ils étaient simples, fournissant des informations de base sur le navigateur et la version. Au fil du temps, ils ont évolué pour inclure des données détaillées sur le système d'exploitation, le type d'appareil, etc., ce qui s'est avéré utile pour l'analyse Web et l'optimisation de l'expérience utilisateur. Cependant, ce détail a également permis la prise d'empreintes digitales de l'appareil, soulevant des problèmes de confidentialité.

Qu’est-ce que la réduction user-agent ?

La réduction User-Agent vise à minimiser les informations contenues dans les chaînes User-Agent afin de protéger la confidentialité des utilisateurs. Les informations à haute entropie telles que les versions spécifiques du système d'exploitation et les modèles de matériel sont réduites. Par exemple, Chrome de Google signale désormais une chaîne User-Agent moins détaillée :

  • Avant : Mozilla/5.0 (Linux ; Android 13 ; Pixel 7) AppleWebKit/537.36 (KHTML, comme Gecko) Chrome/95.2.1.0 Mobile Safari/537.36
  • Après : Mozilla/5.0 (Linux ; Android 10 ; K) AppleWebKit/537.36 (KHTML, comme Gecko) Chrome/95.0.0.0 Mobile Safari/537.36

De même, Firefox et Safari ont implémenté leurs propres versions de réduction des agents utilisateurs, bien qu'avec de légères différences basées sur leurs politiques uniques.

Comment fonctionnent les conseils clients ?

Les conseils client fournissent un moyen de demander des informations spécifiques à haute entropie sur l'appareil et le navigateur de l'utilisateur dans le respect de la confidentialité. Il existe deux méthodes principales pour accéder aux conseils client :

  1. En-têtes de requête HTTP : Les sites Web peuvent demander des informations spécifiques sur le navigateur et l'appareil de l'utilisateur à l'aide d'en-têtes de requête HTTP. Ceci est généralement utilisé dans des contextes propriétaires, garantissant que les informations détaillées sur l'utilisateur ne sont accessibles qu'au site Web principal, et non aux ressources tierces.
  2. API JavaScript : Les conseils client sont également accessibles via l'objet navigator.userAgentData dans JavaScript. Cela permet d'interroger dynamiquement des informations spécifiques, telles que l'architecture, le modèle et la version de la plate-forme, sans définir d'en-têtes supplémentaires.

Implémentation des conseils client

Utilisation des en-têtes de requête HTTP

Pour implémenter les astuces client via les en-têtes HTTP, le serveur doit définir les en-têtes appropriés dans la réponse HTTP, signalant au navigateur d'inclure ces astuces dans les requêtes futures. Par exemple:

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

Les requêtes ultérieures du navigateur incluront alors la version de la plateforme :

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

Utilisation de l'API JavaScript

Pour les applications dynamiques, l'API JavaScript offre de la flexibilité. Par exemple, en utilisant la méthode getHighEntropyValues :

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

Recommandations pour les développeurs

En fonction de vos besoins spécifiques, vous pouvez choisir différentes méthodes pour collecter les données de l'environnement utilisateur :

  • Détection de fonctionnalités : Utilisez les API JavaScript du navigateur existant dans la mesure du possible. C'est plus fiable et évolutif que de s'appuyer sur des chaînes User-Agent.
  • Informations à faible entropie : Pour les détails de base tels que le type d'appareil, la chaîne User-Agent peut toujours être suffisante.
  • Informations à haute entropie : Utilisez les conseils client si des informations détaillées sont nécessaires et que vous contrôlez le domaine.

Conclusion

La réduction des agents utilisateurs et les conseils clients représentent des étapes importantes vers l'amélioration de la confidentialité des utilisateurs tout en permettant aux sites Web de collecter les informations nécessaires pour une fonctionnalité optimale. En comprenant et en mettant en œuvre ces technologies, les développeurs peuvent équilibrer le besoin de données utilisateur détaillées avec des considérations de confidentialité et de performances.

Découvrez-en plus sur notre article de blog détaillé.

Déclaration de sortie Cet article est reproduit sur : https://dev.to/corbado/user-agent-reduction-in-chrome-safari-firefox-3g6g?1 En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3