یوزر ایجنت (User Agent) چیست؟
یوزر ایجنت یا User Agent رشتهای از متون استاندارد است که به عنوان بخشی از هدر (Header) درخواستهای HTTP توسط مرورگر به سرور ارسال میشود. این رشته حاوی اطلاعات حیاتی درباره هویت نرمافزاری کاربر است. از نظر فنی، این رشته به سرور اجازه میدهد تا محتوای متناسب با قابلیتهای دستگاه کاربر (مانند نسخه موبایل یا دسکتاپ) را ارائه دهد. این مکانیزم بخشی از استاندارد RFC 7231 در پروتکل HTTP است.
ساختار فنی User Agent
اغلب مرورگرهای مدرن از یک الگوی تاریخی پیروی میکنند که برای حفظ سازگاری (Compatibility) ایجاد شده است. ساختار کلی به صورت زیر است:
بخش Mozilla/5.0 تقریبا در ابتدای تمام رشتهها وجود دارد که نشاندهنده سازگاری با استانداردهای مدرن وب است، حتی اگر مرورگر فایرفاکس نباشد.
مثالهای کاربردی در ایران
کاربر موبایل اندروید (سامسونگ)
Mozilla/5.0 (Linux; Android 13; SM-A536E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Mobile Safari/537.36رایج در بین کاربران ایرانی با گوشیهای میانرده سامسونگ.
کاربر آیفون (iOS Safari)
Mozilla/5.0 (iPhone; CPU iPhone OS 16_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Mobile/15E148 Safari/604.1استاندارد وبگردی با سافاری در آیفونهای جدید.
ربات گوگل (Googlebot)
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)یوزر ایجنتی که وبمسترهای ایرانی برای بررسی ایندکس سایت در سرچ کنسول مشاهده میکنند.
باورهای غلط و نکات امنیتی
- جعل هویت (Spoofing): یوزر ایجنت به راحتی قابل تغییر است. هیچگاه برای احراز هویت امنیتی تنها به این رشته اعتماد نکنید.
- Fingerprinting: شرکتهای تبلیغاتی از ترکیب یوزر ایجنت، رزولوشن صفحه و سایر پارامترها برای ردیابی کاربران بدون نیاز به کوکی استفاده میکنند.
- تشخیص قطعی نسخه: برخی مرورگرها برای حفظ حریم خصوصی، نسخه سیستم عامل را در یوزر ایجنت فریز (Freeze) کرده و نسخه واقعی را نشان نمیدهند (مانند Windows 10 که گاهی برای 11 هم ارسال میشود).
