खाता लिंक करने की सुविधा की मदद से, Google खाते के उपयोगकर्ता आपकी सेवाओं से तुरंत, आसानी से, और सुरक्षित तरीके से कनेक्ट कर सकते हैं. आपके पास अपने प्लैटफ़ॉर्म से किसी उपयोगकर्ता के डेटा को Google के ऐप्लिकेशन और सेवाओं के साथ शेयर करने के लिए, Google खाते को लिंक करने की सुविधा लागू करने का विकल्प होता है.
सुरक्षित OAuth 2.0 प्रोटोकॉल की मदद से, किसी उपयोगकर्ता के Google खाते को आपके प्लैटफ़ॉर्म पर मौजूद उसके खाते से सुरक्षित तरीके से लिंक किया जा सकता है. इससे Google के ऐप्लिकेशन और डिवाइसों को आपकी सेवाओं का ऐक्सेस मिल जाता है.
उपयोगकर्ता अपने खातों को लिंक या अनलिंक कर सकते हैं. इसके अलावा, Google खाता लिंक करने की सुविधा का इस्तेमाल करके, आपके प्लैटफ़ॉर्म पर नया खाता भी बनाया जा सकता है.
उपयोग के उदाहरण
Google खाते को लिंक करने की कुछ वजहें ये हैं:
अपने प्लैटफ़ॉर्म पर मौजूद उपयोगकर्ता का डेटा, Google के ऐप्लिकेशन और सेवाओं के साथ शेयर करना.
Google TV का इस्तेमाल करके, वीडियो और फ़िल्म का कॉन्टेंट चलाएं.
Google Home ऐप्लिकेशन और Google Assistant की मदद से, Google स्मार्ट होम से कनेक्ट किए गए डिवाइसों को मैनेज और कंट्रोल करना. जैसे, "Ok Google, लाइटें चालू करें".
बातचीत वाली कार्रवाइयों की मदद से, उपयोगकर्ता के हिसाब से Google Assistant के अनुभव और फ़ंक्शन बनाएं. जैसे, "Ok Google, Starbucks से मेरा पसंदीदा कॉफी ऑर्डर करें".
उपयोगकर्ताओं को YouTube पर, ज़रूरी शर्तें पूरी करने वाली लाइव स्ट्रीम देखने के बदले इनाम जीतने की सुविधा दें. इसके लिए, उन्हें अपने Google खाते को इनाम देने वाले पार्टनर खाते से लिंक करना होगा.
साइन अप के दौरान, Google खाते की प्रोफ़ाइल से सहमति के साथ शेयर किए गए डेटा की मदद से, नए खातों को पहले से जानकारी से भरना.
इस्तेमाल की जा सकने वाली सुविधाएं
Google खाता लिंक करने की सुविधा के साथ ये सुविधाएं काम करती हैं:
OAuth लिंकिंग इंप्लिसिट फ़्लो का इस्तेमाल करके, अपने डेटा को तेज़ी और आसानी से शेयर करें.
OAuth लिंकिंग ऑथराइज़ेशन कोड फ़्लो की मदद से बेहतर सुरक्षा दें.
अपने प्लैटफ़ॉर्म पर मौजूदा उपयोगकर्ताओं को साइन-इन कराएं या 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 app यह जांचता है कि आपका ऐप्लिकेशन, उपयोगकर्ता के डिवाइस पर इंस्टॉल है या नहीं:
- अगर ऐप्लिकेशन मिल जाता है, तो उपयोगकर्ता को आपके ऐप्लिकेशन पर 'फ़्लिप' कर दिया जाता है. आपका ऐप्लिकेशन, खाते को Google से लिंक करने के लिए उपयोगकर्ता से सहमति लेता है. इसके बाद, उपयोगकर्ता को Google के प्लैटफ़ॉर्म पर 'वापस फ़्लिप' कर दिया जाता है.
- अगर ऐप्लिकेशन नहीं मिलता है या ऐप्लिकेशन फ़्लिप करने की प्रोसेस के दौरान कोई गड़बड़ी होती है, तो उपयोगकर्ता को व्यवस्थित या वेब OAuth फ़्लो पर रीडायरेक्ट कर दिया जाता है.
दूसरी इमेज. ऐप्लिकेशन फ़्लिप की मदद से, उपयोगकर्ता के फ़ोन पर खाता लिंक करना
OAuth पर आधारित आसानी से लिंक करने की सुविधा ('आसान')
OAuth की मदद से Google Sign-In से लिंक करने की सुविधा को आसान बनाया गया है. इस सुविधा में, OAuth की मदद से लिंक करने की सुविधा के साथ-साथ Google Sign-In की सुविधा भी जोड़ी गई है. इससे उपयोगकर्ता, Google के प्लैटफ़ॉर्म पर ही खाता लिंक कर पाते हैं. इससे, उपयोगकर्ताओं को किसी भी तरह की परेशानी नहीं होती और वे ऐप्लिकेशन छोड़कर नहीं जाते. OAuth पर आधारित आसानी से लिंक करने की सुविधा, उपयोगकर्ताओं को बेहतर अनुभव देती है. इसमें, Google साइन इन को OAuth लिंकिंग के साथ जोड़कर, आसानी से साइन इन करने, खाता बनाने, और खाता लिंक करने की सुविधा मिलती है. आपकी सेवा, OAuth 2.0 के मुताबिक काम करने वाले ऑथराइज़ेशन और टोकन एक्सचेंज एंडपॉइंट के साथ काम करनी चाहिए.
इसके अलावा, आपके टोकन एक्सचेंज एंडपॉइंट को JSON वेब टोकन (JWT) दावों के साथ काम करना चाहिए. साथ ही, यह check
, create
, और get
इंटेंट लागू करना चाहिए.
यह सुविधा कैसे काम करती है:
Google, उपयोगकर्ता खाते पर दावा करता है और आपको यह जानकारी देता है:
- अगर आपके डेटाबेस में उपयोगकर्ता का खाता मौजूद है, तो उपयोगकर्ता आपकी सेवा पर अपने Google खाते को अपने खाते से लिंक कर लेता है.
- अगर आपके डेटाबेस में उपयोगकर्ता का कोई खाता मौजूद नहीं है, तो उपयोगकर्ता Google की दी गई जानकारी, जैसे कि ईमेल, नाम, और प्रोफ़ाइल फ़ोटो का इस्तेमाल करके, तीसरे पक्ष का नया खाता बना सकता है. इसके अलावा, वह साइन इन करके किसी दूसरे ईमेल पते से खाता लिंक कर सकता है. इसके लिए, उसे वेब OAuth के ज़रिए आपकी सेवा में साइन-इन करना होगा.
तीसरी इमेज. आसानी से लिंक करने की सुविधा की मदद से, उपयोगकर्ता के फ़ोन पर खाता लिंक करना
आपको किस फ़्लो का इस्तेमाल करना चाहिए?
हमारा सुझाव है कि सभी फ़्लो लागू करें, ताकि उपयोगकर्ताओं को खाता लिंक करने का बेहतरीन अनुभव मिल सके. व्यवस्थित और ऐप्लिकेशन फ़्लिप फ़्लो, लिंक करने की समस्याओं को कम करते हैं, क्योंकि उपयोगकर्ता लिंक करने की प्रोसेस को बहुत कम चरणों में पूरा कर पाते हैं. वेब 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 फ़्लो का इस्तेमाल किया जाता है, तो उपयोगकर्ताओं को फिर से लिंक करने की कोशिश करनी होगी.
सुझाव
रखरखाव के असर को कम करने के कई तरीके हैं. इन विकल्पों पर विचार करें:
अपनी मौजूदा सेवा को बनाए रखें और कुछ अनुरोधों को अपनी नई सेवा पर भेजें. सभी अनुरोधों को सिर्फ़ तब माइग्रेट करें, जब आपने यह पुष्टि कर ली हो कि वे सही तरीके से काम करेंगे.
रखरखाव के दौरान, टोकन के अनुरोधों की संख्या कम करें:
रखरखाव की अवधि को ऐक्सेस टोकन के लाइफ़टाइम से कम रखें.
ऐक्सेस टोकन की समयसीमा को कुछ समय के लिए बढ़ाएं:
- टोकन की लाइफ़ को, रखरखाव की अवधि से ज़्यादा करें.
- ऐक्सेस टोकन के लाइफ़टाइम की दोगुनी अवधि तक इंतज़ार करें. इससे उपयोगकर्ता, कम समय तक चलने वाले टोकन को लंबे समय तक चलने वाले टोकन के साथ बदल सकते हैं.
- रखरखाव की जानकारी डालें.
503
गड़बड़ी कोड और खाली बॉडी के साथ, टोकन के अनुरोधों का जवाब दें.- रखरखाव से बाहर निकलें.
- टोकन के लाइफ़टाइम को वापस सामान्य पर सेट करें.
Google के साथ रजिस्टर करना
खाता लिंक करने की सुविधा चालू करने के लिए, हमें आपके OAuth 2.0 सेटअप की जानकारी और क्रेडेंशियल शेयर करने होंगे. ज़्यादा जानकारी के लिए रजिस्ट्रेशन देखें.