खातों को लिंक करने के लिए, इंडस्ट्री के स्टैंडर्ड OAuth 2.0 के इंप्लिसिट और ऑथराइज़ेशन कोड फ़्लो का इस्तेमाल किया जाता है.
एजेंट के लिए OAuth 2.1 और पीकेसीई
स्टेटलेस एआई एजेंट और मल्टी-मॉडल पाइपलाइन के लिए, OAuth 2.1 को लागू करने का सुझाव दिया जाता है.
- पीकेसीई (प्रूफ़ की फ़ॉर कोड एक्सचेंज): ऑथराइज़ेशन कोड फ़्लो को सुरक्षित करने के लिए इसका इस्तेमाल करना ज़रूरी है. इससे इंटरसेप्शन हमलों को रोका जा सकता है.
- इंप्लिसिट फ़्लो नहीं: इंप्लिसिट फ़्लो, यूआरएल में ऐक्सेस टोकन दिखाता है, इससे एजेंट के एनवायरमेंट के लिए सुरक्षा से जुड़ा जोखिम पैदा होता है.
आपकी सेवा में, OAuth 2.0/2.1 के मुताबिक ऑथराइज़ेशन और टोकन एक्सचेंज एंडपॉइंट काम करने चाहिए.
इंप्लिसिट फ़्लो में, Google उपयोगकर्ता के ब्राउज़र में आपका ऑथराइज़ेशन एंडपॉइंट खोलता है. साइन इन करने के बाद, Google को लंबे समय तक इस्तेमाल किया जा सकने वाला ऐक्सेस टोकन वापस भेजें. अब यह ऐक्सेस टोकन, Google से भेजे गए हर अनुरोध में शामिल किया जाता है.
ऑथराइज़ेशन कोड फ़्लो में, आपको दो एंडपॉइंट की ज़रूरत होती है:
authorization एंडपॉइंट, जो उन उपयोगकर्ताओं को साइन-इन यूज़र इंटरफ़ेस दिखाता है जिन्होंने पहले से साइन इन नहीं किया है. ऑथराइज़ेशन एंडपॉइंट, कम समय के लिए मान्य ऑथराइज़ेशन कोड भी बनाता है. इससे, अनुरोध किए गए ऐक्सेस के लिए उपयोगकर्ताओं की सहमति रिकॉर्ड की जाती है.
टोकन एक्सचेंज एंडपॉइंट, जो दो तरह के एक्सचेंज के लिए ज़िम्मेदार होता है:
- यह ऑथराइज़ेशन कोड को लंबे समय तक चलने वाले रीफ़्रेश टोकन और कम समय तक चलने वाले ऐक्सेस टोकन से बदलता है. यह एक्सचेंज तब होता है, जब उपयोगकर्ता खाता लिंक करने की प्रोसेस पूरी करता है.
- यह लंबे समय तक चलने वाले रीफ़्रेश टोकन को कम समय तक चलने वाले ऐक्सेस टोकन से बदलता है. यह एक्सचेंज तब होता है, जब Google को नए ऐक्सेस टोकन की ज़रूरत होती है, क्योंकि उसके पास मौजूद टोकन की समयसीमा खत्म हो गई होती है.
OAuth 2.0 फ़्लो चुनना
इंप्लिसिट फ़्लो को लागू करना आसान है. हालांकि, Google का सुझाव है कि इंप्लिसिट फ़्लो से जारी किए गए ऐक्सेस टोकन की समयसीमा कभी खत्म नहीं होनी चाहिए. ऐसा इसलिए होता है, क्योंकि टोकन की समयसीमा खत्म होने के बाद, उपयोगकर्ता को इंप्लिसिट फ़्लो के साथ अपना खाता फिर से लिंक करना पड़ता है. अगर आपको सुरक्षा की वजहों से टोकन की समयसीमा खत्म होने की सुविधा चाहिए, तो हमारा सुझाव है कि आप ऑथराइज़ेशन कोड फ़्लो का इस्तेमाल करें.
डिज़ाइन से जुड़े दिशा-निर्देश
इस सेक्शन में, OAuth लिंक करने के फ़्लो के लिए होस्ट की गई उपयोगकर्ता स्क्रीन के डिज़ाइन से जुड़ी ज़रूरी शर्तों और सुझावों के बारे में बताया गया है. Google के ऐप्लिकेशन से कॉल किए जाने के बाद, आपका प्लैटफ़ॉर्म उपयोगकर्ता को'Google में साइन इन करें' पेज और खाता लिंक करने की सहमति वाली स्क्रीन दिखाता है. खाते लिंक करने की सहमति देने के बाद, उपयोगकर्ता को वापस Google के ऐप्लिकेशन पर भेज दिया जाता है.
ज़रूरी शर्तें
- आपको यह बताना होगा कि उपयोगकर्ता का खाता Google से लिंक किया जाएगा, न कि Google Home या Google Assistant जैसे किसी खास Google प्रॉडक्ट से.
सुझाव
हमारा सुझाव है कि आप ये काम करें:
Google की निजता नीति दिखाओ. सहमति लेने के लिए दिखने वाली स्क्रीन पर, Google की निजता नीति का लिंक शामिल करें.
शेयर किया जाने वाला डेटा. उपयोगकर्ता को साफ़ तौर पर और कम शब्दों में बताएं कि Google को उसका कौनसा डेटा चाहिए और क्यों चाहिए.
साफ़ तौर पर कॉल-टू-ऐक्शन दिया गया हो. सहमति लेने के लिए दिखाई जाने वाली स्क्रीन पर, आसानी से समझ में आने वाला कॉल-टू-ऐक्शन बताएं. जैसे, "सहमति दें और लिंक करें." ऐसा इसलिए है, क्योंकि उपयोगकर्ताओं को यह पता होना चाहिए कि खाते लिंक करने के लिए, उन्हें Google के साथ कौनसा डेटा शेयर करना होगा.
सदस्यता रद्द करने की सुविधा. अगर उपयोगकर्ता खाता लिंक नहीं करना चाहते हैं, तो उन्हें वापस जाने या रद्द करने का विकल्प दें.
साइन इन करने की आसान प्रोसेस. पक्का करें कि उपयोगकर्ताओं के पास अपने Google खाते में साइन इन करने का आसान तरीका हो. जैसे, उपयोगकर्ता नाम और पासवर्ड के लिए फ़ील्ड या Google से साइन इन करें.
अनलिंक करने की सुविधा. उपयोगकर्ताओं को खाता अनलिंक करने का तरीका बताएं. जैसे, आपके प्लैटफ़ॉर्म पर मौजूद खाते की सेटिंग का यूआरएल. इसके अलावा, Google खाते का लिंक शामिल किया जा सकता है. इससे उपयोगकर्ता, लिंक किए गए खाते को मैनेज कर सकते हैं.
उपयोगकर्ता खाते को बदलने की सुविधा. उपयोगकर्ताओं को उनके खाते स्विच करने का तरीका सुझाएं. यह खास तौर पर तब फ़ायदेमंद होता है, जब उपयोगकर्ताओं के पास एक से ज़्यादा खाते हों.
- अगर किसी उपयोगकर्ता को खाता बदलने के लिए, सहमति वाली स्क्रीन बंद करनी पड़ती है, तो Google को ऐसी गड़बड़ी की जानकारी भेजें जिसे ठीक किया जा सके. इससे उपयोगकर्ता, चुने गए खाते में OAuth लिंकिंग और इंप्लिसिट फ़्लो का इस्तेमाल करके साइन इन कर पाएगा.
अपना लोगो शामिल करें. सहमति वाली स्क्रीन पर, अपनी कंपनी का लोगो दिखाएं. लोगो को सही जगह पर रखने के लिए, स्टाइल से जुड़े दिशा-निर्देशों का इस्तेमाल करें. अगर आपको Google का लोगो भी दिखाना है, तो लोगो और ट्रेडमार्क देखें.
प्रोजेक्ट बनाना
खाता जोड़ने की सुविधा का इस्तेमाल करने के लिए, अपना प्रोजेक्ट बनाने के लिए:
- Google API Console पर जाएं.
- प्रोजेक्ट बनाएं पर क्लिक करें.
- कोई नाम डालें या जनरेट किए गए सुझाव को स्वीकार करें.
- बाकी बचे फ़ील्ड की पुष्टि करें या उनमें बदलाव करें.
- बनाएं पर क्लिक करें.
अपना प्रोजेक्ट आईडी देखने के लिए:
- Google API Console पर जाएं.
- लैंडिंग पेज पर मौजूद टेबल में, अपना प्रोजेक्ट ढूंढें. प्रोजेक्ट आईडी, आईडी कॉलम में दिखता है.
उस स्क्रीन को कॉन्फ़िगर करना जहां OAuth के लिए सहमति दी जाती है
Google खाता जोड़ने की प्रोसेस में, सहमति वाली स्क्रीन शामिल होती है. इस स्क्रीन पर उपयोगकर्ताओं को यह जानकारी मिलती है कि कौनसे ऐप्लिकेशन उनके डेटा को ऐक्सेस करने का अनुरोध कर रहे हैं, वे किस तरह का डेटा मांग रहे हैं, और उन पर कौनसी शर्तें लागू होती हैं. Google API क्लाइंट आईडी जनरेट करने से पहले, आपको उस स्क्रीन को कॉन्फ़िगर करना होगा जहां OAuth के लिए सहमति दी जाती है.
- Google APIs कंसोल के, उस स्क्रीन वाले पेज को खोलें जहां OAuth के लिए सहमति दी जाती है.
- अगर आपसे पूछा जाए, तो वह प्रोजेक्ट चुनें जिसे आपने अभी बनाया है.
"OAuth के लिए सहमति वाली स्क्रीन" पेज पर, फ़ॉर्म भरें और “सेव करें” बटन पर क्लिक करें.
ऐप्लिकेशन का नाम: सहमति का अनुरोध करने वाले ऐप्लिकेशन का नाम. नाम से आपके ऐप्लिकेशन की सही जानकारी मिलनी चाहिए. साथ ही, यह नाम उपयोगकर्ताओं को अन्य जगहों पर दिखने वाले ऐप्लिकेशन के नाम से मेल खाना चाहिए. ऐप्लिकेशन का नाम, खाता जोड़ने के लिए सहमति वाली स्क्रीन पर दिखेगा.
ऐप्लिकेशन का लोगो: सहमति वाली स्क्रीन पर दिखने वाली इमेज. इससे उपयोगकर्ताओं को आपके ऐप्लिकेशन को पहचानने में मदद मिलेगी. लोगो, खाता जोड़ने के लिए सहमति वाली स्क्रीन और खाते की सेटिंग में दिखता है
सहायता के लिए ईमेल पता: ताकि उपयोगकर्ता, सहमति से जुड़े सवालों के लिए आपसे संपर्क कर सकें.
Google APIs के लिए स्कोप: स्कोप की मदद से, आपका ऐप्लिकेशन उपयोगकर्ता के निजी Google डेटा को ऐक्सेस कर सकता है. Google खाता जोड़ने के इस्तेमाल के मामले में, डिफ़ॉल्ट स्कोप (ईमेल, प्रोफ़ाइल, openid) काफ़ी है. आपको संवेदनशील स्कोप जोड़ने की ज़रूरत नहीं है. आम तौर पर, स्कोप के लिए अनुरोध, ऐक्सेस की ज़रूरत पड़ने पर ही करना चाहिए. पहले से अनुरोध करके रखना सही नहीं है. ज़्यादा जानें.
अनुमति वाले डोमेन: Google, आपको और आपके उपयोगकर्ताओं को सुरक्षित रखने के लिए, सिर्फ़ उन ऐप्लिकेशन को अनुमति वाले डोमेन का इस्तेमाल करने की अनुमति देता है जो OAuth का इस्तेमाल करके पुष्टि करते हैं. आपके ऐप्लिकेशन के लिंक, अनुमति वाले डोमेन पर होस्ट किए जाने चाहिए. ज़्यादा जानें.
ऐप्लिकेशन के होम पेज का लिंक: आपके ऐप्लिकेशन का होम पेज. यह अनुमति वाले डोमेन पर होस्ट किया जाना चाहिए.
ऐप्लिकेशन की निजता नीति का लिंक: यह Google खाता जोड़ने के लिए सहमति वाली स्क्रीन पर दिखता है. यह अनुमति वाले डोमेन पर होस्ट किया जाना चाहिए.
ऐप्लिकेशन की सेवा की शर्तों का लिंक (ज़रूरी नहीं): यह अनुमति वाले डोमेन पर होस्ट किया जाना चाहिए.
पहली इमेज. Tunery नाम के काल्पनिक ऐप्लिकेशन के लिए, Google खाता जोड़ने के लिए सहमति वाली स्क्रीन
"पुष्टि की स्थिति" देखें. अगर आपके ऐप्लिकेशन की पुष्टि की जानी है, तो "पुष्टि के लिए सबमिट करें" बटन पर क्लिक करके, अपने ऐप्लिकेशन को पुष्टि के लिए सबमिट करें. ज़्यादा जानकारी के लिए, OAuth की पुष्टि से जुड़ी ज़रूरी शर्तें देखें.
अपना OAuth सर्वर लागू करना
लागू करने की पुष्टि करना
OAuth 2.0 Playground टूल का इस्तेमाल करके, लागू करने की पुष्टि की जा सकती है.
टूल में, यह तरीका अपनाएं:
- OAuth 2.0 कॉन्फ़िगरेशन विंडो खोलने के लिए, कॉन्फ़िगरेशन पर क्लिक करें.
- OAuth फ़्लो फ़ील्ड में, क्लाइंट-साइड चुनें.
- OAuth एंडपॉइंट फ़ील्ड में, कस्टम चुनें.
- अपने OAuth 2.0 एंडपॉइंट और Google को असाइन किया गया क्लाइंट आईडी, उससे जुड़े फ़ील्ड में डालें.
- पहला चरण सेक्शन में, कोई भी Google स्कोप न चुनें. इसके बजाय, इस फ़ील्ड को खाली छोड़ दें या अपने सर्वर के लिए मान्य स्कोप टाइप करें. अगर OAuth स्कोप का इस्तेमाल नहीं किया जाता है, तो कोई भी स्ट्रिंग टाइप करें. जब आपका काम पूरा हो जाए, तो एपीआई को अनुमति दें पर क्लिक करें.
- दूसरे चरण और तीसरे चरण सेक्शन में, OAuth 2.0 फ़्लो देखें. साथ ही, यह पुष्टि करें कि हर चरण उम्मीद के मुताबिक काम कर रहा है.
Google खाता लिंक करने की सुविधा का डेमो टूल का इस्तेमाल करके, लागू की गई सुविधा की पुष्टि की जा सकती है.
टूल में, यह तरीका अपनाएं:
- Google से साइन इन करें बटन पर क्लिक करें.
- वह खाता चुनें जिसे आपको लिंक करना है.
- सेवा आईडी डालें.
- विकल्प के तौर पर, एक या उससे ज़्यादा ऐसे स्कोप डालें जिनके लिए आपको ऐक्सेस का अनुरोध करना है.
- डेमो शुरू करें पर क्लिक करें.
- जब कहा जाए, तब पुष्टि करें कि आपके पास खाते को लिंक करने के अनुरोध को स्वीकार या अस्वीकार करने का विकल्प है.
- पुष्टि करें कि आपको अपने प्लैटफ़ॉर्म पर रीडायरेक्ट किया गया हो.