यूज़र-एजेंट रिडक्शन ऑरिजिन ट्रायल

उपयोगकर्ता-एजेंट के ज़रिए जानकारी इकट्ठा करने की समस्या को कम करने की सुविधा, उपयोगकर्ता-एजेंट (यूए) स्ट्रिंग में मौजूद जानकारी को कम करके, पैसिव ऑनलाइन ट्रैकिंग के प्लैटफ़ॉर्म को कम करने की कोशिश है. इस जानकारी में, ब्राउज़र का ब्रैंड और अहम वर्शन, डेस्कटॉप या मोबाइल डिवाइस के बीच का अंतर, और वह प्लैटफ़ॉर्म शामिल है जिस पर ब्राउज़र काम कर रहा है. फ़िलहाल, UA स्ट्रिंग को हर एचटीटीपी अनुरोध पर शेयर किया जाता है. साथ ही, इसे ब्राउज़र से लोड किए गए सभी संसाधनों के लिए JavaScript में दिखाया जाता है. इसमें ब्राउज़र, उस पर चलने वाले प्लैटफ़ॉर्म, और उसकी क्षमताओं के बारे में अहम जानकारी होती है. User-Agent क्लाइंट के संकेत (UA-CH), पूरी UA स्ट्रिंग जैसी ही जानकारी दे सकते हैं. साथ ही, साइटों को सिर्फ़ उस UA जानकारी का अनुरोध करने की अनुमति देते हैं जिसकी उन्हें ज़रूरत होती है.

Chrome 95 के बीटा वर्शन से, हम उपयोगकर्ता-एजेंट स्ट्रिंग को छोटा करने के लिए, ऑरिजिन ट्रायल शुरू करेंगे. इससे साइटों को, छोटी UA स्ट्रिंग पाने के लिए ऑप्ट-इन करने की सुविधा मिलेगी. इससे साइटों को, Chrome में कम किए गए UA के डिफ़ॉल्ट व्यवहार से पहले, समस्याओं का पता लगाने और उन्हें ठीक करने में मदद मिलेगी. UA को कम करने की प्रोसेस, 2022 की दूसरी तिमाही में शुरू होने वाली है. अगर आपको ऑरिजिन ट्रायल को, सार्वजनिक तौर पर रिलीज़ होने से पहले, Chrome 95 के बीटा वर्शन का इस्तेमाल करने वाले लोगों पर आज़माना है, तो Chrome 95 के रिलीज़ होने की तारीख (फ़िलहाल 19 अक्टूबर, 2021 के लिए शेड्यूल की गई है) से पहले, ऑप्ट-इन करके टेस्ट करें.

यहां ऑरिजिन ट्रायल के बारे में खास जानकारी दी गई है. साथ ही, यह भी बताया गया है कि आपको क्या उम्मीद करनी चाहिए. हमेशा की तरह, हम UA में कमी लाने के लिए किए जा रहे इस ट्रायल के दौरान, GitHub के रिपॉज़िटरी में सुझाव, शिकायत या राय देने के लिए आपका स्वागत करते हैं.

User-Agent क्या है?

उपयोगकर्ता एजेंट (UA) स्ट्रिंग को हर एचटीटीपी अनुरोध पर शेयर किया जाता है. साथ ही, इसे ब्राउज़र से लोड किए गए सभी संसाधनों के लिए JavaScript में दिखाया जाता है. फ़िलहाल, इसमें ब्राउज़र और उस प्लैटफ़ॉर्म के बारे में अहम जानकारी होती है जिस पर वह काम कर रहा है.

यूज़र-एजेंट को कम क्यों किया जा रहा है?

उपयोगकर्ता-एजेंट के ज़रिए जानकारी इकट्ठा करने की सुविधा को कम करने की सुविधा, Chrome ब्राउज़र में पैसिव ऑनलाइन ट्रैकिंग के प्लैटफ़ॉर्म को कम करने के लिए बनाई गई है. इसका एलान पहली बार जनवरी 2020 में किया गया था. UA स्ट्रिंग में मौजूद जानकारी को सिर्फ़ ब्राउज़र के ब्रैंड और अहम वर्शन, उसके डेस्कटॉप या मोबाइल डिवाइस के अंतर, और उस प्लैटफ़ॉर्म तक सीमित करने पर, अलग-अलग उपयोगकर्ताओं की पहचान करना मुश्किल हो जाता है.

वेब डेवलपर के लिए इसका क्या मतलब है?

साइटों को कम यूए स्ट्रिंग पाने के लिए तैयार रहना चाहिए. साथ ही, ऑरिजिन ट्रायल में हिस्सा लेना चाहिए. इस बारे में यहां बताया गया है. उपयोगकर्ता एजेंट की कम की गई वैल्यू इनमें दिखेंगी:

  • User-Agent एचटीटीपी अनुरोध हेडर
  • navigator.userAgent JavaScript गैटर
  • navigator.platform JavaScript गैटर
  • navigator.appVersion JavaScript गैटर

कम किए गए उपयोगकर्ता-एजेंट से शेयर की गई जानकारी के अलावा, ज़्यादा क्लाइंट जानकारी पाने के लिए, साइटों को नए उपयोगकर्ता-एजेंट क्लाइंट के बारे में अहम जानकारी एपीआई पर माइग्रेट करना होगा. माइग्रेशन की रणनीतियों के बारे में ज़्यादा जानकारी के लिए, उपयोगकर्ता एजेंट क्लाइंट हिंट पर माइग्रेट करना देखें.

फ़िलहाल, उपयोगकर्ता एजेंट स्ट्रिंग को छोटा करने के प्लान में iOS और वेबव्यू शामिल नहीं हैं. इसलिए, उन प्लैटफ़ॉर्म को उपयोगकर्ता एजेंट की पूरी स्ट्रिंग मिलती रहेगी. इसकी मुख्य वजह यह है कि इन प्लैटफ़ॉर्म पर अब तक User-Agent क्लाइंट हिंट लागू नहीं किए गए हैं.

यह ऑरिजिन ट्रायल कैसे काम करता है?

यह ऑरिजिन ट्रायल, स्टैंडर्ड ऑरिजिन ट्रायल से थोड़ा अलग है. स्टैंडर्ड ऑरिजिन ट्रायल, सिर्फ़ रिस्पॉन्स में व्यवहार को कंट्रोल कर सकते हैं. उदाहरण के लिए, रिस्पॉन्स के JavaScript में एपीआई के ऐक्सेस को कंट्रोल करना. इस ट्रायल में, हमारा लक्ष्य सिर्फ़ JavaScript एपीआई में दी गई UA स्ट्रिंग में बदलाव करना नहीं है, बल्कि एचटीटीपी अनुरोध पर भेजे गए User-Agent हेडर में भी बदलाव करना है.

ऐसा करने के लिए, हम एक अस्थायी क्लाइंट हिंट तय कर रहे हैं, जिसका नाम Sec-CH-UA-Reduced है. अनुरोध में इसकी मौजूदगी से पता चलेगा कि User-Agent हेडर की वैल्यू में, कम की गई UA स्ट्रिंग शामिल है. Sec-CH-UA-Reduced क्लाइंट हिंट, कम की गई UA स्ट्रिंग के साथ सिर्फ़ तब भेजा जाएगा, जब ऑरिजिन ट्रायल टोकन मान्य हो. ऑरिजिन ट्रायल की समयसीमा खत्म होने के बाद, Sec-CH-UA-Reduced क्लाइंट हिंट काम नहीं करेगा. ध्यान रखें कि जब तक Critical-CH header सेट नहीं किया जाता, तब तक पहले नेविगेशन अनुरोध को कम नहीं की गई User-Agent स्ट्रिंग ही मिलेगी.

एक ही ऑरिजिन के सब-सोर्स के अनुरोध, टॉप-लेवल के अनुरोध की तरह ही User-Agent स्ट्रिंग अपने-आप भेजेंगे. तीसरे पक्ष के ऑरिजिन के लिए सब-सोर्स के अनुरोधों में भी, टॉप-लेवल के अनुरोध जैसी ही उपयोगकर्ता-एजेंट स्ट्रिंग भेजी जाएगी. इसमें, ऑरिजिन ट्रायल टोकन मान्य होने पर, कम की गई यूए स्ट्रिंग भी शामिल होगी. हालांकि, इसके लिए ज़रूरी है कि अनुमतियों की नीति से इसकी अनुमति मिली हो.

मैं यूज़र-एजेंट रिडक्शन के ऑरिजिन ट्रायल में कैसे हिस्सा लेूं?

  1. ऑरिजिन ट्रायल के लिए रजिस्टर करने और अपने डोमेन के लिए टोकन पाने के लिए, उपयोगकर्ता एजेंट को छोटा करने के लिए ट्रायल पेज पर जाएं.

  2. अपने एचटीटीपी रिस्पॉन्स हेडर अपडेट करें:

    1. अपने एचटीटीपी रिस्पॉन्स हेडर में Origin-Trial: <ORIGIN TRIAL TOKEN> जोड़ें. यहां <ORIGIN TRIAL TOKEN> में वह टोकन होता है जो आपको ऑरिजिन ट्रायल के लिए रजिस्टर करते समय मिला था.
    2. अपने एचटीटीपी रिस्पॉन्स हेडर में Accept-CH: Sec-CH-UA-Reduced जोड़ें.
    3. Accept-CH सेट करने पर, ऑरिजिन को किए जाने वाले अगले अनुरोधों पर सिर्फ़ छोटी User-Agent स्ट्रिंग भेजी जाएगी. छोटी User-Agent स्ट्रिंग के साथ पहला नेविगेशन अनुरोध फिर से भेजने के लिए, Accept-CH और Origin-Trial हेडर के साथ-साथ अपने एचटीटीपी रिस्पॉन्स हेडर में Critical-CH: Sec-CH-UA-Reduced जोड़ें.
    4. ध्यान दें: अगर रिस्पॉन्स हेडर में मान्य Origin-Trial टोकन और Accept-CH: Sec-CH-UA-Reduced शामिल है, तो सभी सब-रिसॉर्स अनुरोध (उदाहरण के लिए, इमेज या स्टाइलशीट के लिए) और सब-नेविगेशन (उदाहरण के लिए, iframes), कम की गई UA स्ट्रिंग भेजेंगे. भले ही, उन अनुरोधों के ऑरिजिन को ऑरिजिन ट्रायल में रजिस्टर न किया गया हो.
  3. अपनी वेबसाइट को Chrome M95 (या उसके बाद के वर्शन) में लोड करें और कम की गई UA स्ट्रिंग पाना शुरू करें.

  4. UA में होने वाले बदलावों से जुड़ी समस्याओं या सुझावों को UA रिडक्शन GitHub रिपॉज़िटरी पर सबमिट करें.

  5. सोर्स कोड के साथ-साथ, ऑरिजिन ट्रायल के बारे में आसानी से जानने के लिए, https://uar-ot.glitch.me/ पर जाएं.

तीसरे पक्ष के एम्बेड के तौर पर, ऑरिजिन ट्रायल में कैसे हिस्सा लें?

Chrome 96 से, तीसरे पक्ष के एम्बेड (उदाहरण के लिए, किसी दूसरी साइट में मौजूद iframe) ऑरिजिन ट्रायल में हिस्सा ले सकते हैं. इसके लिए, शीर्ष लेवल की साइट को रजिस्टर करने की ज़रूरत नहीं है.

तीसरे पक्ष के एम्बेड के तौर पर रजिस्टर करने के लिए:

  1. उपयोगकर्ता एजेंट को छोटा करने के लिए ट्रायल पर जाएं और रजिस्टर करें पर क्लिक करें.
  2. टोकन बनाते समय, Third-party matching चेकबॉक्स को चुनना न भूलें.
  3. तीसरे पक्ष के एम्बेड से छोटा User-Agent हेडर पाने के लिए, एचटीटीपी रिस्पॉन्स हेडर अपडेट करें.
  4. JavaScript API में छोटी User-Agent स्ट्रिंग पाने के लिए, ट्रायल टोकन को JavaScript के ज़रिए इंजेक्ट किया जाना चाहिए.

तीसरे पक्ष के एम्बेड पर ऑरिजिन ट्रायल चलाने के बारे में कुछ अहम बातें: + तीसरे पक्ष के एम्बेड के लिए Critical-CH तय नहीं किया जा सकता. इसलिए, पहला नेविगेशन, कम की गई UA स्ट्रिंग नहीं भेजेगा. हालांकि, तीसरे पक्ष के एम्बेड के सब-रिसॉर्स के अनुरोध, कम की गई UA स्ट्रिंग भेजेंगे. + अगर ऑरिजिन ट्रायल की पुष्टि, तीसरे पक्ष के एम्बेड किए गए कॉन्टेंट के ऑरिजिन के लिए की जाती है, तो टॉप-लेवल नेविगेशन में उसी ऑरिजिन के लिए किए गए बाद के अनुरोधों में, छोटी UA स्ट्रिंग भेजी जाएगी. इस वजह से, हमारा सुझाव है कि टॉप-लेवल और एम्बेड किए गए अनुरोध, दोनों के लिए ऑरिजिन ट्रायल में हिस्सा लेने की संख्या को बढ़ाया जाए. + अगर उपयोगकर्ता एजेंट ने तीसरे पक्ष की कुकी बंद कर दी हैं, तो तीसरे पक्ष के एम्बेड किए गए अनुरोधों में User-Agent हेडर के लिए ऑरिजिन ट्रायल काम नहीं करेगा. हालांकि, JavaScript API को अब भी छोटी UA स्ट्रिंग मिलेगी.

मैं इस बात की पुष्टि कैसे करूं कि ऑरिजिन ट्रायल काम कर रहा है?

यह पुष्टि करने के लिए कि ऑरिजिन ट्रायल काम कर रहा है, अनुरोध हेडर की जांच करें और इन बातों को पक्का करें:

  1. User-Agent हेडर में, कम किया गया वर्शन शामिल होता है. कम की गई UA स्ट्रिंग के सैंपल की सूची देखें. यह पता लगाने का आसान तरीका है कि Chrome के माइनर वर्शन की स्ट्रिंग में 0.0.0 है.
  2. Sec-CH-UA-Reduced हेडर को ?1 पर सेट किया गया है.

शुरुआती रिस्पॉन्स के हेडर में, ऑरिजिन ट्रायल टोकन दिखना चाहिए. जैसे:

शुरुआती रिस्पॉन्स के हेडर, जिनमें ऑरिजिन-ट्रायल टोकन शामिल है.

छोटी UA स्ट्रिंग वाले अनुरोध हेडर इस तरह दिखने चाहिए:

इसके बाद के अनुरोध हेडर, जिनमें छोटी की गई UA स्ट्रिंग शामिल है.

मैं यूज़र-एजेंट रिडक्शन ऑरिजिन ट्रायल में हिस्सा लेना कैसे बंद करूं?

मुफ़्त में आज़माने की अवधि के दौरान, किसी भी समय इस प्रोग्राम से बाहर निकला जा सकता है और User-Agent की पूरी स्ट्रिंग देखी जा सकती है. इस सुविधा से ऑप्ट आउट करने के लिए:

  1. अपने एचटीटीपी रिस्पॉन्स में ऐसा Accept-CH हेडर भेजें जिसमें Sec-CH-UA-Reduced शामिल न हो. ध्यान दें: अगर आपकी साइट किसी दूसरे क्लाइंट के सुझाव का अनुरोध नहीं करती है, तो खाली वैल्यू के साथ Accept-CH का इस्तेमाल करके, यह काम किया जा सकता है.
  2. अपने एचटीटीपी रिस्पॉन्स से, यूज़र-एजेंट रिडक्शन की सुविधा के ट्रायल के लिए Origin-Trial हेडर हटाएं.
  3. अगर यह सेट है, तो अपने एचटीटीपी रिस्पॉन्स में Critical-CH हेडर से Sec-CH-UA-Reduced हटाएं.

ऑरिजिन ट्रायल कितने समय तक चलेगा?

UA Reduction का ऑरिजिन ट्रायल कम से कम छह महीने तक चलेगा. यह Chrome के छह माइलस्टोन के हिसाब से है. ऑरिजिन ट्रायल, M95 में दिखेगा और M101 तक खत्म हो जाएगा. इसके बाद, Chrome, ऑरिजिन ट्रायल से मिले सुझावों और राय का आकलन करेगा. इसके बाद, रोल आउट प्लान के मुताबिक, उपयोगकर्ता एजेंट की छोटी स्ट्रिंग को धीरे-धीरे भेजना शुरू किया जाएगा. अगर किसी साइट को ज़्यादा समय चाहिए, तो वह ऑरिजिन ट्रायल के बाद, बंद होने की प्रक्रिया के लिए ऑप्ट-इन कर सकती है. इससे, उसे कम से कम छह महीने तक पूरी UA स्ट्रिंग ऐक्सेस करने की अनुमति मिलेगी. इस सुविधा के बंद होने से पहले, इसे आज़माने के बारे में ज़्यादा जानकारी पब्लिश की जाएगी.

मैं उपयोगकर्ता एजेंट को छोटा करने की सुविधा के ऑरिजिन ट्रायल के बारे में सुझाव/राय या शिकायत कैसे सबमिट करूं?

UA में होने वाले बदलावों से जुड़ी समस्याओं या सुझावों को UA रिडक्शन GitHub रिपॉज़िटरी पर सबमिट करें.