खास जानकारी

खाता लिंक करने की सुविधा की मदद से, Google खाता इस्तेमाल करने वाले लोग आपकी सेवाओं से तुरंत, आसानी से, और सुरक्षित तरीके से जुड़ सकते हैं. आपके पास Google खाता लिंक करने की सुविधा लागू करने का विकल्प होता है. इससे, आपके प्लैटफ़ॉर्म पर मौजूद किसी उपयोगकर्ता का डेटा, Google के ऐप्लिकेशन और सेवाओं के साथ शेयर किया जा सकता है.

सुरक्षित OAuth 2.0 प्रोटोकॉल की मदद से, किसी व्यक्ति के Google खाते को आपके प्लैटफ़ॉर्म पर मौजूद उसके खाते से सुरक्षित तरीके से लिंक किया जा सकता है. इससे Google के ऐप्लिकेशन और डिवाइसों को आपकी सेवाओं का ऐक्सेस मिल जाता है.

लोग अपने खातों को लिंक या अनलिंक कर सकते हैं. इसके अलावा, Google खाता लिंक करने की सुविधा का इस्तेमाल करके, आपके प्लैटफ़ॉर्म पर नया खाता भी बनाया जा सकता है.

उपयोग के उदाहरण

Google खाते को लिंक करने की कुछ वजहें यहां दी गई हैं:

  • अपने प्लैटफ़ॉर्म से किसी उपयोगकर्ता का डेटा, Google के ऐप्लिकेशन और सेवाओं के साथ शेयर करें.

  • Google TV का इस्तेमाल करके, वीडियो और फ़िल्मों का कॉन्टेंट चलाएं.

  • Google Home ऐप्लिकेशन और Google Assistant का इस्तेमाल करके, Google Smart Home से कनेक्ट किए गए डिवाइसों को मैनेज और कंट्रोल करें. जैसे, "Ok Google, लाइटें चालू करो".

  • Conversational Actions की मदद से, Google Assistant के अनुभव और सुविधाओं को उपयोगकर्ता की ज़रूरत के हिसाब से बनाएं. जैसे, "Ok Google, Starbucks से मेरा पसंदीदा ऑर्डर करो".

  • लोगों को यह सुविधा दें कि वे YouTube पर ज़रूरी शर्तें पूरी करने वाली लाइव स्ट्रीम देखकर इनाम पा सकें. इसके लिए, उन्हें अपने Google खाते को इनाम देने वाले पार्टनर खाते से लिंक करना होगा.

  • साइन-अप के दौरान, नए खातों में पहले से मौजूद डेटा को भरने के लिए, Google खाते की प्रोफ़ाइल से सहमति लेकर शेयर किया गया डेटा इस्तेमाल करें.

इस्तेमाल की जा सकने वाली सुविधाएं

Google खाता लिंक करने की सुविधा के साथ ये सुविधाएं काम करती हैं:

  • OAuth Linking implicit फ़्लो का इस्तेमाल करके, अपना डेटा तुरंत शेयर करें.

  • OAuth Linking के ऑथराइज़ेशन कोड फ़्लो की मदद से, बेहतर सुरक्षा उपलब्ध कराएं.

  • मौजूदा उपयोगकर्ताओं को साइन-इन करने या Google से पुष्टि किए गए नए उपयोगकर्ताओं को अपने प्लैटफ़ॉर्म पर साइन-अप करने की सुविधा दें. साथ ही, उनकी सहमति लें और आसान तरीके से खाता लिंक करने की सुविधा के साथ सुरक्षित तरीके से डेटा शेयर करें.

  • ऐप्लिकेशन फ़्लिप की मदद से, खरीदारी की प्रोसेस को आसान बनाएं. Google के किसी भरोसेमंद ऐप्लिकेशन से, एक टैप करने पर पुष्टि किया गया Android या iOS ऐप्लिकेशन सुरक्षित तरीके से खुल जाता है. साथ ही, एक टैप करने पर उपयोगकर्ता की सहमति मिल जाती है और खाते लिंक हो जाते हैं.

  • सिर्फ़ ज़रूरी डेटा शेयर करने के लिए, कस्टम स्कोप तय करके उपयोगकर्ता की निजता को बेहतर बनाएं. उपयोगकर्ता के डेटा का इस्तेमाल कैसे किया जाता है, यह साफ़ तौर पर बताकर उपयोगकर्ता का भरोसा बढ़ाएं.

  • आपके प्लैटफ़ॉर्म पर होस्ट किए गए डेटा और सेवाओं का ऐक्सेस, खातों को अनलिंक करके रद्द किया जा सकता है. टोकन रद्द करने का वैकल्पिक एंडपॉइंट लागू करने से, Google की ओर से शुरू किए गए इवेंट के साथ सिंक किया जा सकता है. वहीं, क्रॉस-खाता सुरक्षा (आरआईएससी) की मदद से, Google को उन सभी खातों को अनलिंक करने वाले इवेंट के बारे में सूचना दी जा सकती है जो आपके प्लैटफ़ॉर्म पर होते हैं.

खाता लिंक करने के फ़्लो

Google खाता लिंक करने के तीन फ़्लो हैं. ये सभी OAuth पर आधारित हैं. इनके लिए, आपको OAuth 2.0 के मुताबिक अनुमति देने और टोकन एक्सचेंज करने वाले एंडपॉइंट को मैनेज या कंट्रोल करना होगा.

खाता लिंक करने की प्रोसेस के दौरान, आपको Google को अलग-अलग Google खातों के लिए ऐक्सेस टोकन जारी करने होते हैं. इसके लिए, आपको खाताधारकों से उनके खाते लिंक करने और डेटा शेयर करने की सहमति लेनी होती है.

OAuth लिंकिंग ('वेब OAuth')

यह OAuth का बेसिक फ़्लो है. इससे उपयोगकर्ताओं को लिंक करने के लिए आपकी वेबसाइट पर भेजा जाता है. उपयोगकर्ता को आपकी वेबसाइट पर रीडायरेक्ट किया जाता है, ताकि वह अपने खाते में साइन इन कर सके. साइन इन करने के बाद, उपयोगकर्ता आपकी सेवा पर मौजूद अपना डेटा, Google के साथ शेयर करने की सहमति देता है. इसके बाद, उपयोगकर्ता का Google खाता और आपकी सेवा लिंक हो जाती है.

OAuth लिंकिंग, ऑथराइज़ेशन कोड और इंप्लिसिट OAuth फ़्लो के साथ काम करती है. आपकी सेवा को इंप्लिसिट फ़्लो के लिए, OAuth 2.0 के मुताबिक ऑथराइज़ेशन एंडपॉइंट होस्ट करना होगा. साथ ही, ऑथराइज़ेशन कोड फ़्लो का इस्तेमाल करते समय, ऑथराइज़ेशन और टोकन एक्सचेंज, दोनों एंडपॉइंट को दिखाना होगा.

पहली इमेज. उपयोगकर्ता के फ़ोन पर, वेब OAuth की मदद से खाता लिंक करना

OAuth पर आधारित ऐप्लिकेशन फ़्लिप लिंकिंग ('ऐप्लिकेशन फ़्लिप')

यह एक OAuth फ़्लो है. इससे उपयोगकर्ताओं को लिंक करने के लिए, आपके ऐप्लिकेशन पर भेजा जाता है.

OAuth पर आधारित ऐप्लिकेशन फ़्लिप लिंक करने की सुविधा, उपयोगकर्ताओं को यह जानकारी देती है कि वे पुष्टि किए गए Android या iOS मोबाइल ऐप्लिकेशन और Google के प्लैटफ़ॉर्म के बीच कैसे स्विच करें. इससे वे डेटा ऐक्सेस करने से जुड़े सुझाए गए बदलावों की समीक्षा कर पाते हैं. साथ ही, आपके प्लैटफ़ॉर्म पर मौजूद अपने खाते को Google खाते से लिंक करने के लिए सहमति दे पाते हैं. ऐप्लिकेशन फ़्लिप की सुविधा चालू करने के लिए, आपकी सेवा में OAuth लिंकिंग या OAuth पर आधारित 'Google से साइन इन करें' सुविधा का इस्तेमाल करके लिंकिंग की सुविधा होनी चाहिए. इसके लिए, ऑथराइज़ेशन कोड फ़्लो का इस्तेमाल करना होगा.

ऐप्लिकेशन फ़्लिप की सुविधा, Android और iOS दोनों के लिए उपलब्ध है.

यह सुविधा कैसे काम करती है:

Google ऐप्लिकेशन यह जांच करता है कि उपयोगकर्ता के डिवाइस पर आपका ऐप्लिकेशन इंस्टॉल है या नहीं:

  • अगर ऐप्लिकेशन मिल जाता है, तो उपयोगकर्ता को आपके ऐप्लिकेशन पर "रीडायरेक्ट" कर दिया जाता है. आपका ऐप्लिकेशन, उपयोगकर्ता से Google के साथ खाता लिंक करने की सहमति लेता है. इसके बाद, उसे Google प्लैटफ़ॉर्म पर "रीडायरेक्ट" कर दिया जाता है.
  • अगर ऐप्लिकेशन नहीं मिलता है या ऐप्लिकेशन फ़्लिप करने की प्रोसेस के दौरान कोई गड़बड़ी होती है, तो उपयोगकर्ता को स्ट्रीमलाइन किए गए या वेब OAuth फ़्लो पर रीडायरेक्ट कर दिया जाता है.

दूसरी इमेज. ऐप्लिकेशन फ़्लिप की सुविधा का इस्तेमाल करके, उपयोगकर्ता के फ़ोन पर खाता लिंक करना

OAuth पर आधारित स्ट्रीमलाइन लिंकिंग ('स्ट्रीमलाइन')

OAuth पर आधारित, 'Google से साइन इन करें' सुविधा के साथ खाता लिंक करने की आसान प्रोसेस में, OAuth के साथ खाता लिंक करने की सुविधा के अलावा, 'Google से साइन इन करें' सुविधा भी जोड़ी जाती है. इससे उपयोगकर्ता, Google के प्लैटफ़ॉर्म से बाहर जाए बिना खाता लिंक करने की प्रोसेस पूरी कर पाते हैं. इससे, खाता लिंक करने में आने वाली समस्याएं कम हो जाती हैं और उपयोगकर्ता बीच में प्रोसेस छोड़कर नहीं जाते. OAuth पर आधारित स्ट्रीमलाइन लिंकिंग, उपयोगकर्ताओं को बेहतर अनुभव देती है. इसमें 'Google से साइन इन करें' को OAuth लिंकिंग के साथ जोड़कर, आसानी से साइन इन करने, खाता बनाने, और खाता लिंक करने की सुविधा मिलती है. आपकी सेवा में, OAuth 2.0 के साथ काम करने वाले ऑथराइज़ेशन और टोकन एक्सचेंज एंडपॉइंट होने चाहिए. इसके अलावा, आपके टोकन एक्सचेंज एंडपॉइंट को JSON वेब टोकन (JWT) के दावे करने की सुविधा देनी होगी. साथ ही, check, create, और get इंटेंट लागू करने होंगे.

यह सुविधा कैसे काम करती है:

Google, उपयोगकर्ता खाते की पुष्टि करता है और यह जानकारी आपको भेजता है:

  • अगर आपके डेटाबेस में उपयोगकर्ता का कोई खाता मौजूद है, तो उपयोगकर्ता अपने Google खाते को आपकी सेवा पर मौजूद खाते से लिंक कर लेता है.
  • अगर आपके डेटाबेस में उपयोगकर्ता के लिए कोई खाता मौजूद नहीं है, तो उपयोगकर्ता के पास दो विकल्प होते हैं. पहला, वह Google से मिली जानकारी का इस्तेमाल करके, तीसरे पक्ष का नया खाता बना सकता है. इस जानकारी में ईमेल, नाम, और प्रोफ़ाइल फ़ोटो शामिल होती है. दूसरा, वह किसी अन्य ईमेल पते से साइन इन करके, उसे लिंक कर सकता है. इसके लिए, उसे वेब ओएयूटीएच का इस्तेमाल करके, आपकी सेवा में साइन इन करना होगा.

तीसरी इमेज. उपयोगकर्ता के फ़ोन पर, आसानी से खाता लिंक करने की सुविधा का इस्तेमाल करके खाता लिंक करना

आपको किस फ़्लो का इस्तेमाल करना चाहिए?

हमारा सुझाव है कि आप सभी फ़्लो लागू करें, ताकि उपयोगकर्ताओं को खाता लिंक करने का बेहतरीन अनुभव मिल सके. आसान और ऐप्लिकेशन फ़्लिप फ़्लो की मदद से, लिंक करने की प्रोसेस को आसान बनाया जा सकता है. इससे उपयोगकर्ता कुछ ही चरणों में लिंक करने की प्रोसेस पूरी कर पाते हैं. वेब OAuth लिंकिंग को लागू करना सबसे आसान है. इसलिए, इसे सबसे पहले लागू किया जा सकता है. इसके बाद, अन्य लिंकिंग फ़्लो जोड़े जा सकते हैं.

टोकन का इस्तेमाल करना

Google खाता लिंक करने की सुविधा, OAuth 2.0 के इंडस्ट्री स्टैंडर्ड पर आधारित है.

खाताधारकों से उनके खातों को लिंक करने और डेटा शेयर करने की सहमति मिलने के बाद, Google को अलग-अलग Google खातों के लिए ऐक्सेस टोकन जारी किए जाते हैं.

टोकन के टाइप

OAuth 2.0 उपयोगकर्ता एजेंट, क्लाइंट ऐप्लिकेशन, और OAuth 2.0 सर्वर के बीच संपर्क करने के लिए, टोकन नाम की स्ट्रिंग का इस्तेमाल करता है.

खाता लिंक करते समय, तीन तरह के OAuth 2.0 टोकन इस्तेमाल किए जा सकते हैं:

  • ऑथराइज़ेशन कोड. कुछ समय के लिए उपलब्ध टोकन, जिसका इस्तेमाल ऐक्सेस और रीफ़्रेश टोकन के लिए किया जा सकता है. सुरक्षा के मकसद से, Google आपके अनुमति एंडपॉइंट को कॉल करता है, ताकि एक बार इस्तेमाल होने वाला या बहुत कम समय के लिए मान्य कोड हासिल किया जा सके.

  • ऐक्सेस टोकन. ऐसा टोकन जो किसी संसाधन का ऐक्सेस देता है. इस टोकन के खो जाने की वजह से, डेटा के एक्सपोज़र को सीमित करने के लिए, इसका लाइफ़टाइम सीमित होता है. आम तौर पर, यह एक घंटे के बाद खत्म हो जाता है.

  • रीफ़्रेश टोकन. यह एक लंबे समय तक चलने वाला टोकन होता है. ऐक्सेस टोकन की समयसीमा खत्म होने पर, इसे नए ऐक्सेस टोकन से बदला जा सकता है. जब आपकी सेवा, Google के साथ इंटिग्रेट होती है, तो इस टोकन को सिर्फ़ Google सेव और इस्तेमाल करता है. Google, रीफ़्रेश टोकन को ऐक्सेस टोकन के साथ एक्सचेंज करने के लिए, आपके टोकन एक्सचेंज एंडपॉइंट को कॉल करता है. इन टोकन का इस्तेमाल, उपयोगकर्ता के डेटा को ऐक्सेस करने के लिए किया जाता है.

टोकन मैनेज करना

क्लस्टर किए गए एनवायरमेंट और क्लाइंट-सर्वर एक्सचेंज में रेस कंडीशन की वजह से, टोकन के साथ काम करते समय, समय और गड़बड़ी को मैनेज करने की स्थितियां मुश्किल हो सकती हैं. उदाहरण के लिए:

  • आपको नए ऐक्सेस टोकन का अनुरोध मिलता है और आपने नया ऐक्सेस टोकन जारी किया है. साथ ही, आपको अपनी सेवा के संसाधन का ऐक्सेस पाने का अनुरोध भी मिलता है. इसके लिए, उस ऐक्सेस टोकन का इस्तेमाल किया जाता है जिसकी समयसीमा खत्म नहीं हुई है.
  • Google को आपके रीफ़्रेश टोकन का जवाब अब तक नहीं मिला है या कभी नहीं मिला है. इस दौरान, Google के अनुरोध में पहले से मान्य रीफ़्रेश टोकन का इस्तेमाल किया जाता है.

अनुरोध और जवाब किसी भी क्रम में मिल सकते हैं. इसके अलावा, क्लस्टर में चल रही असाइनोक्रोनस सेवाओं, नेटवर्क के व्यवहार या अन्य तरीकों की वजह से, अनुरोध और जवाब नहीं भी मिल सकते.

टोकन मैनेज करने वाले आपके और Google के सिस्टम के बीच, शेयर की गई स्थिति तुरंत और पूरी तरह से एक जैसी होने की गारंटी नहीं दी जा सकती. एक ही समय पर, एक से ज़्यादा मान्य और समयसीमा खत्म न हुए टोकन, एक ही सिस्टम में या अलग-अलग सिस्टम में मौजूद हो सकते हैं. हमारा सुझाव है कि उपयोगकर्ताओं पर पड़ने वाले नेगेटिव असर को कम करने के लिए, आप ये काम करें:

  • नया टोकन जारी होने के बाद भी, समयसीमा खत्म न हुए ऐक्सेस टोकन स्वीकार करना.
  • टोकन रोटेशन को रीफ़्रेश करें के विकल्पों का इस्तेमाल करें.
  • एक साथ कई मान्य ऐक्सेस और रीफ़्रेश टोकन का इस्तेमाल किया जा सकता है. सुरक्षा के लिए, आपको टोकन और टोकन के लाइफ़टाइम की संख्या सीमित करनी चाहिए.
रखरखाव और रुकावट को मैनेज करना

रखरखाव या अचानक होने वाली रुकावटों के दौरान, हो सकता है कि Google आपके ऐक्सेस और रीफ़्रेश टोकन पाने के लिए, ऑथराइज़ेशन या टोकन एक्सचेंज एंडपॉइंट को कॉल न कर पाए.

आपके एंडपॉइंट, 503 गड़बड़ी कोड और खाली मुख्य भाग के साथ जवाब देंगे. इस मामले में, Google कुछ समय के लिए, टोकन एक्सचेंज के उन अनुरोधों को फिर से भेजता है जो पूरे नहीं हो पाए थे. अगर Google बाद में रीफ़्रेश और ऐक्सेस टोकन हासिल कर पाता है, तो उपयोगकर्ताओं को ऐसे अनुरोध नहीं दिखते जो पूरा नहीं हो पाए.

अगर उपयोगकर्ता ने ऐक्सेस टोकन का अनुरोध किया है और वह पूरा नहीं हो पाता है, तो उसे गड़बड़ी का मैसेज दिखता है. अगर इंप्लिसिट OAuth 2.0 फ़्लो का इस्तेमाल किया जाता है, तो उपयोगकर्ताओं को फिर से लिंक करने की कोशिश करनी होगी.

सुझाव

रखरखाव के असर को कम करने के कई तरीके हैं. इन विकल्पों पर विचार करें:

  • अपनी मौजूदा सेवा को बनाए रखें और कुछ अनुरोधों को अपनी नई सेवा पर भेजें. सभी अनुरोधों को सिर्फ़ तब माइग्रेट करें, जब आपने यह पुष्टि कर ली हो कि वे सही तरीके से काम करेंगे.

  • रखरखाव के दौरान, टोकन के अनुरोधों की संख्या कम करें:

    • रखरखाव की अवधि को ऐक्सेस टोकन के लाइफ़टाइम से कम रखें.

    • ऐक्सेस टोकन की समयसीमा को कुछ समय के लिए बढ़ाएं:

      1. टोकन की लाइफ़ को, रखरखाव की अवधि से ज़्यादा करें.
      2. ऐक्सेस टोकन के लाइफ़टाइम की दोगुनी अवधि तक इंतज़ार करें. इससे उपयोगकर्ता, कम समय तक चलने वाले टोकन को लंबे समय तक चलने वाले टोकन के साथ बदल सकते हैं.
      3. रखरखाव की जानकारी डालें.
      4. 503 गड़बड़ी कोड और खाली बॉडी के साथ, टोकन के अनुरोधों का जवाब दें.
      5. रखरखाव से बाहर निकलें.
      6. टोकन के लाइफ़टाइम को वापस सामान्य पर सेट करें.

Google खाते से रजिस्टर करें

हमें OAuth 2.0 सेटअप की जानकारी चाहिए. साथ ही, खाता लिंक करने की सुविधा चालू करने के लिए क्रेडेंशियल शेयर करने होंगे. ज़्यादा जानकारी के लिए, रजिस्ट्रेशन देखें.