User agentA számítástechnikában a user agent (felhasználói ágens, ügynök) olyan kliensalkalmazás, amely egy elosztott kliens-szerver rendszer kommunikációjában használt hálózati protokollt valósít meg. Leggyakrabban a World Wide Webet elérő alkalmazások (webböngészők, keresőrobotok stb.) esetében használják, de más rendszerek, pl. a Session Initiation Protocol (SIP) is használja a user agent kifejezést a kommunikációs munkamenet végpontjaira utalva.[1] A webes user agentek tartozhatnak webböngészőkhöz, keresőrobotokhoz, mobiltelefonokhoz, fogyatékkal élők képernyőolvasóihoz és Braille-böngészőihez. A felhasználói ágensek működésük közben általában azonosítják magukat, alkalmazástípusukat, operációs rendszerüket, gyártójukat, a szoftver verziószámát egy rájuk jellemző azonosító karakterlánc, a user agent string, vagyis böngészőazonosító karakterlánc elküldésével. A HTTP, SIP és az SMTP/NNTP[2] protokollok esetében ezek a fejléc egy User-Agent nevű mezőjében kerülnek továbbításra. Az internetes robotok, így a keresőrobotok is, gyakran hozzátesznek ehhez egy URL-t és/vagy egy e-mail címet, hogy a webmester értesíthesse a robot gazdáját. A user agent meghatározásaEgyes user agent programok azonosítják magukat a kliens-szerver kommunikáció során. A HTTP és SIP protokollokban az azonosítás a lekérés fejlécének (request header) A böngészőazonosító karakterlánc az egyik kritérium, ami alapján a keresőrobotokat kizárják egy webhely egyes részeinek elérésből a Robots Exclusion Standard (robots.txt) fájl segítségével. Titoktartással kapcsolatos problémákA böngészőt azonosító információ részben a számítógép felhasználójának azonosítására is alkalmas; a böngészőverziók, operációsrendszer-verziók stb. körülbelül 10,5 bitnyi azonosító információt hordoznak.[3] FormátumAz RFC 1945 mindössze annyit kíván meg, hogy a user agent karakterlánc egy termékleíróból és opcionális megjegyzésekből kell álljon. Például egy WikiBrowser nevű böngésző azonosítója ehhez hasonló lehet: WikiBrowser/1.0 Gecko/1.0. Ahol a karakterlánc részei a következők:
A webböngészők által használt, a fentieken alapuló, de nemhivatalos formátum a következő: Mozilla/[verzió] ([rendszer- és böngészőinformáció]) [platform] ([platform részletei]) [kiterjesztések]. Például az iPaden futó Safari a következő karakterláncot küldi: Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Mobile/7B405 A string egyes részeinek magyarázata a következő:
User agent-hamisításA web története során az egyes webböngészők népszerűsége váltakozott (lásd böngészőháborúk), ami a webhelyek designereit időnként arra késztette, hogy inkább egyes kivételezett böngészőkön való jó működésre törekedjenek a World Wide Web Consortium (W3C) vagy az Internet Engineering Task Force (IETF) ajánlásainak való megfelelés helyett. A webhelyek sokszor tartalmaznak a böngésző típusát és verzióját detektáló (sniffing) kódot, ami alapján eldöntik, hogy a weboldal melyik verzióját küldjék el a böngésző felé. Ez azt okozhatja, hogy a kevésbé elterjedt böngészők lebutított tartalmat kapnak, rosszabb esetben webhely megtagadja az oldal elküldését.[4] Néhány böngésző ezért képes arra, hogy a user agentjét elrejtse (cloak) vagy meghamisítsa (spoof) a szerveroldali tartalom biztosabb megjelenítése érdekében. Például az Androidban használt böngésző Safariként azonosítja magát a jobb kompatibilitás miatt.[5] A böngészőkön kívül más HTTP-kliensek, pl. letöltéskezelők és offline böngészők is képesek lehetnek a böngészőazonosító karakterlánc megváltoztatására. Időnként népszerűek a webfejlesztők körében a Bármilyen böngészővel nézhető-kampányok,[6] melyek a fejlesztőket böngészőfüggetlen weboldalakat készítésére bátorítják. A user agent-hamisítás egyik következménye lehet a böngészőhasználati statisztikák pontatlansága. User agent-detektálásA böngészőazonosító karakterlánc detektálása vagy user agent sniffing arra a gyakorlatra utal, hogy egyes webhelyek más-más böngészővel nézve más-más tartalmat mutatnak. Ennek egyik legitim oka a keresőrobotok speciális kezelése, például fizetési falon belül engedése lehet. Egy jellemző példa a Microsoft Exchange Server 2003 Outlook Web Access funkciója; ha Internet Explorer 6 vagy újabb verzióval jelenítik meg az OWA-t, több képesség hozzáférhető, mint más böngészőkben. A user agent-detektálást általában nem tartják követendő mintának, mert a web alapgondolatával szembe megy: bátorítja a böngészőspecifikus webfejlesztést és bünteti az új böngészőket, amiknek még nem ismert/elterjedt a user agentje. Ehelyett a W3C javasolja a szabványos, a lehető legtöbb böngészőben jól megjelenő HTML-kód készítését, és a böngészőverzió helyett böngészőképességekre való tesztelést.[7] A kimondottan mobiltelefonokat célzó weboldalak, mint az NTT DoCoMo I-Mode-ja vagy a Vodafone Vodafone Live! portálja gyakran alapoznak a user agent-detektálásra, mivel a mobil böngészők egymástól nagyon eltérőek lehetnek. Az okostelefonok fejlett böngészői mellett sokan használnak régebbi telefonokat (feature phone-okat), melyek még nem profitáltak az elmúlt évek gyors technológiai fejlődéséből. Így a mobilos portálok gyakran teljesen más kódot generálnak attól függően, hogy milyen telefonnal nézik őket. Ezek lehetnek kis különbségek, például egyes képek átméretezése, hogy elférjen a kisebb képernyőn, vagy nagyobbak, például az egész weboldalt WML-ben kell elküldeni XHTML helyett. A titkosítási erősség jelzéseAz Egyesült Államokban kiadott böngészők, mint a Netscape Navigator vagy az Internet Explorer a böngészőt azonosító karakterláncon belül az U, I és N betűkkel specifikálják az alkalmazott titkosítás erősségét. 1996 előtt az amerikai kormány nem engedte a 40 bitesnél hosszabb kulcsú titkosítás exportját (fegyverexportnak tekintette), így a gyártók különböző erősségű titkosítást tartalmazó böngészőverziókat állítottak elő. Az „U” (mint USA) a belföldön használható, 128 bites titkosításra utalt; az „I” (International, azaz nemzetközi) az exportálható, már akkor is nevetségesen gyenge 40 bites titkosításra, míg az „N” (none) a titkosítás hiányára.[8] Az exportkorlátozások megszüntetése után a legtöbb gyártó átállt a 256 bites titkosítás használatára. JegyzetekFordítás
Források
Kapcsolódó szócikkek |
Portal di Ensiklopedia Dunia