User agent

Unuser agentouagent utilisateurest uneapplicationlogicielleclientequi utilise unprotocole réseauparticulier ; l'expression est principalement employée pour identifier l'application permettant aux internautes et auxmoteurs de recherchede parcourir leWeb. Les agents utilisateur du Web vont de la gamme desnavigateurs(browseren anglais) jusqu'auxrobots d'indexation(crawleren anglais), en passant par leslecteurs d'écranou les navigateursbraillepour les personnes ayant uneincapacité.
Quand un internaute visite unepage Web, unechaîne de caractèresest généralement envoyée au serveur pour identifier l'agent utilisateur. Elle est incluse dans la requêteHTTPpar l'en-tête «User-Agent» et elle donne des informations comme : le nom de l'application, la version, lesystème d'exploitation, la langue, etc.
Lesrobots d'indexationincluent souvent uneURLet/ou uneadresse électroniquesi lewebmestreveut contacter l'opérateur du robot. La chaîne «User-Agent» est l'un des critères utilisé pour exclure un certain nombre de pages ou une partie d'un site Web en utilisant le «protocole d'exclusion des robots» (robots.txt). Ceci permet aux webmestres qui estiment que certaines parties de leur site Web ne devraient pas être incluses dans les données recueillies par un robot en particulier, ou qu'un robot en particulier épuise trop labande passante, de l'inviter à ne pas visiter ces pages.
À des moments diversde son histoire, l'utilisation du Web a été dominée par un navigateurdans la mesureoù beaucoup de sites ont été conçus pour fonctionner aveccelui-cien particulier, plutôt que de suivre les normes telles que celles duW3Cet de l'IETF.
Au niveau du code de ces sites, se situe une partie dédiée à la détection du navigateur. En fonction de ce que renvoie cette partie, le site retourne du contenu différent. Dans des cas extrêmes, il existe aussi des sites complètement inaccessibles.
Pour contrer ces pratiques, les divers navigateurs ont masqué ou détourné la chaîne, afin de s'identifier autrement au niveau du code de détection ; souvent, la véritable identité du navigateur est incluse plus loin dans la chaîne.
L'exemple le plus ancien est celui d'Internet Explorerqui utilise une chaîne User-Agent commençant par « Mozilla/<version> (compatible; MSIE<version>... », afin de recevoir le contenu destiné àNetscape Navigator, son rival principal au début de son développement. Il ne s'agit pas d'une référence au navigateur Firefox, développé beaucoup plus tard, mais au nom de code original pour le navigateur, qui était également le nom de la mascotte de la société Netscape.
Ce format de chaîne User-Agent a été depuis copié par d'autres, en partie parce qu'Internet Explorerest devenu, à son tour, le navigateur dominant.
OperaetSafari, des rivaux d'Internet Explorer ont alors mis en place des systèmes où l'utilisateur peut choisir une fausse chaîne User-Agent pour l'envoyer. Certains, par exemple comme Safari, reproduisent entièrement la chaîne User-Agent ; d'autres, comme Opera reproduisent la chaîne User-Agent mais ajoutent le véritable nom du navigateur à son extrémité. Cette dernière approche mène à une chaîne contenant trois noms et versions : en premier, la chaîne User-Agent prétend être Mozilla (Netscape Navigator), puis MSIE (Internet Explorer) et finalement Opera.
D'autres programmes utilisant le protocoleHTTP, comme les outils de téléchargement ou les navigateurs enmode différé, ont la capacité de changer la chaîne User-Agent envoyée aux serveurs. Ceci pour être accepté par des serveurs qui refusaient de servir ces programmes tout de suite, ou pas du tout parce qu'ils sont la plupart du temps considérés comme responsable de la surcharge.
Ce cercle vicieux n'est pas près de s'arrêter dans le domaine des navigateurs Web. Quelques développeurs utilisant les standards ont commencé une campagne intituléeViewable With Any Browserpour encourager les créateurs de page Web à respecter les standards officiels, et pas les particularités des navigateurs.
En 2005, beaucoup de sites Web sont devenus plus conformes aux normes qu'auparavant.À cause de cette modification, la part de marché des navigateurs comme Opera et Safari est souvent minimisée, alors que la part de marché des navigateurs plus populaires comme Mozilla Firefox et Internet Explorer est souvent exagérée.
La modification régulière de l'user-agent peut avoir un intérêt du point de vue de la protection de lavie privée, vu qu'il sera difficile de savoir si plusieurs user-agent sont du fait d'un seul ou de plusieurs utilisateurs. Il existe des extensions de navigateur permettant de changer périodiquement l'user-agent.
Vous pouvez modifier votre User Agent sur cette page :Microsoft EnhanceIE
Netscape Navigatorutilisait ces deux lettres pour spécifier le niveau de chiffrement, parce que le gouvernement américain n'autorisait pas un chiffrement supérieur à 40 bits à l'extérieur desÉtats-Unis. « U » pour les États-Unis (version avec chiffrement à 128 bits) et « I » pour l'International (le navigateur a un chiffrement de 40 bits et peut être utilisé partout dans le monde). À l'origine, la version « U » était autorisée et téléchargée uniquement depuis les États-Unis, mais depuis que le gouvernement a stoppé cette politique et élevé le chiffrement maintenant autorisé (voiren:Export of cryptographypour plus d'information), il n'est plus obligatoire d'avoir deux versions.Netscape,OperaetMozilladistribuent leurs navigateurs uniquement dans la version "U", puisqu'une version internationale n'est plus exigée.
Ce texte est inclus dans lesuser agentInternet Explorerpour spécifier quel framework Microsoft .NET a été installé sur
l'ordinateur. On peut souvent trouver dans les chaînes s'il s'agit deWindows XPou deWindows Server 2003.