पुष्टि करना और अनुमति देना, दो तरीके इस्तेमाल किए जाते हैं. इनका इस्तेमाल पहचान की पुष्टि और संसाधनों के ऐक्सेस की पुष्टि करने के लिए किया जाता है. यह दस्तावेज़ उन मुख्य शब्दों की पहचान करता है जिन्हें आपको अपने ऐप्लिकेशन में पुष्टि करने और अनुमति देने से पहले पता होना चाहिए.
पुष्टि करने से पता चलता है कि अनुरोध कौन कर रहा है. अनुमति से यह पता चलता है कि अनुरोध करने वाला व्यक्ति, किन संसाधनों को ऐक्सेस कर सकता है और उसके पास किस लेवल का ऐक्सेस है. अनुमति पाने के लिए पुष्टि करना एक ज़रूरी शर्त है. अनुरोध करने वाले की पहचान ज़ाहिर किए बिना, यह तय नहीं किया जा सकता कि किन संसाधनों को ऐक्सेस करना है. ज़्यादा जानकारी के लिए, ज़रूरी शब्दावली सेक्शन देखें.
होटल बुकिंग के नीचे दिए गए आसान उदाहरण पर ध्यान दें. होटल पहुंचने पर, फ़्रंट डेस्क क्लर्क आपसे बुकिंग की पुष्टि के लिए आपसे आईडी मांगेगा. आपका आईडी, होटल में आपकी पुष्टि करता है. फ़्रंट डेस्क क्लर्क, आपको होटल का डिजिटल बटन देता है. इस कुंजी से आपको होटल में मौजूद कुछ संसाधनों का ऐक्सेस मिलता है, जैसे कि होटल का कमरा, जिम, और बिज़नेस सेंटर (कंप्यूटर, डेस्क, प्रिंटर, और फ़ैक्स की सुविधा). होटल कुंजी आपको उन संसाधनों को ऐक्सेस करने की अनुमति देती है.
प्रोसेस की खास जानकारी
नीचे दिए गए डायग्राम में, Google Workspace API के लिए पुष्टि करने और अनुमति देने के हाई-लेवल चरण दिखाए गए हैं:
अपने Google Cloud प्रोजेक्ट और ऐप्लिकेशन को कॉन्फ़िगर करना: डेवलपमेंट के दौरान, अपने ऐप्लिकेशन को Google Cloud Console में रजिस्टर किया जाता है. इसमें, अनुमति के दायरे तय किए जाते हैं और क्रेडेंशियल ऐक्सेस किए जाते हैं, ताकि आपके ऐप्लिकेशन की पुष्टि एपीआई पासकोड, असली उपयोगकर्ता के क्रेडेंशियल या सेवा खाते के क्रेडेंशियल से की जा सके.
ऐक्सेस के लिए अपने ऐप्लिकेशन की पुष्टि करना: जब आपका ऐप्लिकेशन चलता है, तो रजिस्टर किए गए ऐक्सेस क्रेडेंशियल की जांच की जाती है. अगर आपका ऐप्लिकेशन असली उपयोगकर्ता के तौर पर पुष्टि कर रहा है, तो आपको साइन इन करने का अनुरोध दिख सकता है.
संसाधनों का अनुरोध करना: जब आपके ऐप्लिकेशन को Google के संसाधनों के ऐक्सेस की ज़रूरत होती है, तो वह Google से ऐक्सेस के उन दायरों का इस्तेमाल करने के लिए कहता है जिन्हें आपने पहले रजिस्टर किया था.
उपयोगकर्ता की सहमति मांगें: अगर आपका ऐप्लिकेशन असली उपयोगकर्ता के तौर पर पुष्टि कर रहा है, तो Google उस स्क्रीन पर OAuth के लिए सहमति देता है. इससे उपयोगकर्ता यह तय कर सकता है कि आपके ऐप्लिकेशन को, अनुरोध किए गए डेटा का ऐक्सेस देना है या नहीं.
संसाधनों के लिए मंज़ूर किया गया अनुरोध भेजना: अगर उपयोगकर्ता ऐक्सेस के दायरे के लिए सहमति देता है, तो आपका ऐप्लिकेशन क्रेडेंशियल और उपयोगकर्ता की मंज़ूरी वाले ऐक्सेस के दायरे को अनुरोध में बंडल कर देता है. ऐक्सेस टोकन पाने के लिए, अनुरोध Google के ऑथराइज़ेशन सर्वर को भेजा जाता है.
Google, ऐक्सेस टोकन दिखाता है: ऐक्सेस टोकन में, ऐक्सेस के जिन दायरों की अनुमति दी गई है उनकी सूची होती है. अगर दिए गए दायरों की सूची, ऐक्सेस के अनुरोध किए गए दायरों से ज़्यादा सीमित है, तो आपका ऐप्लिकेशन टोकन की मदद से सीमित की गई सभी सुविधाओं को बंद कर देता है.
अनुरोध किए गए संसाधनों को ऐक्सेस करना: आपका ऐप्लिकेशन काम के एपीआई शुरू करने और संसाधनों को ऐक्सेस करने के लिए, Google से मिले ऐक्सेस टोकन का इस्तेमाल करता है.
रीफ़्रेश टोकन पाएं (ज़रूरी नहीं): अगर आपके ऐप्लिकेशन को किसी एक ऐक्सेस टोकन के लाइफ़टाइम के अलावा Google API के ऐक्सेस की ज़रूरत है, तो वह रीफ़्रेश टोकन पा सकता है.
ज़्यादा संसाधनों का अनुरोध करना: अगर अतिरिक्त ऐक्सेस की ज़रूरत है, तो आपका ऐप्लिकेशन उपयोगकर्ता को नए स्कोप का ऐक्सेस देने के लिए कहता है. इस वजह से, ऐक्सेस टोकन पाने के लिए नया अनुरोध मिलता है (चरण 3 से 6).
ज़रूरी शब्दावली
पुष्टि करने और अनुमति देने से जुड़े शब्दों की सूची नीचे दी गई है:
- पुष्टि करना
यह पक्का करना कि प्रिंसिपल वही है जो उपयोगकर्ता की ओर से काम करने वाला उपयोगकर्ता या ऐप्लिकेशन हो सकता है. Google Workspace ऐप्लिकेशन लिखते समय, आपको पुष्टि करने के इन तरीकों के बारे में पता होना चाहिए:
- उपयोगकर्ता की पुष्टि करना
- आपके ऐप्लिकेशन में उपयोगकर्ता की पुष्टि करने (साइन इन करने) का काम. उपयोगकर्ता की पुष्टि आम तौर पर एक साइन इन प्रोसेस से की जाती है. इसमें उपयोगकर्ता अपनी पहचान की पुष्टि करने के लिए उपयोगकर्ता नाम और पासवर्ड का इस्तेमाल करता है. उपयोगकर्ता की पुष्टि को ऐप्लिकेशन में शामिल किया जा सकता है. इसके लिए Google से साइन इन करें का इस्तेमाल करें.
- ऐप्लिकेशन की पुष्टि करना
- एक ऐसा ऐप्लिकेशन जो ऐप्लिकेशन चलाने वाले उपयोगकर्ता की ओर से सीधे Google की सेवाओं की पुष्टि करता है. ऐप्लिकेशन की पुष्टि करने के लिए आम तौर पर, आपके ऐप्लिकेशन के कोड में पहले से बनाए गए क्रेडेंशियल का इस्तेमाल किया जाता है.
- अनुमति देना
मुख्य खाते के पास डेटा ऐक्सेस करने या कार्रवाइयां करने की अनुमतियां या "अधिकार" होना चाहिए. अनुमति देने का काम, आपके ऐप्लिकेशन पर लिखे गए कोड के ज़रिए किया जाता है. यह कोड उपयोगकर्ता को बताता है कि ऐप्लिकेशन उनकी ओर से कार्रवाई करना चाहता है. अनुमति मिलने पर, वह आपके ऐप्लिकेशन के यूनीक क्रेडेंशियल का इस्तेमाल करके, Google से ऐक्सेस टोकन लेता है. Google इस कोड का इस्तेमाल डेटा ऐक्सेस करने या कार्रवाइयां करने के लिए करता है.
- क्रेडेंशियल
पहचान का एक ऐसा तरीका जिसका इस्तेमाल सॉफ़्टवेयर सुरक्षा में किया जाता है. पुष्टि करने की बात करें, तो क्रेडेंशियल में अक्सर उपयोगकर्ता नाम और पासवर्ड, दोनों का इस्तेमाल होता है. Google Workspace API के लिए अनुमति देने के मामले में, क्रेडेंशियल आम तौर पर पहचान का कोई तरीका होता है, जैसे कि एक यूनीक सीक्रेट स्ट्रिंग. इसे सिर्फ़ ऐप्लिकेशन डेवलपर और ऑथेंटिकेशन सर्वर के बीच जाना जाता है. Google, पुष्टि करने के इन क्रेडेंशियल के साथ काम करता है: एपीआई पासकोड, OAuth 2.0 क्लाइंट आईडी, और सेवा खाते.
- एपीआई पासकोड
- वह क्रेडेंशियल जिसका इस्तेमाल सार्वजनिक डेटा के ऐक्सेस का अनुरोध करने के लिए किया जाता है. जैसे, Maps API या Google Workspace की फ़ाइलों का इस्तेमाल करके शेयर किया गया डेटा. यह डेटा, Google Workspace की शेयर करने की सेटिंग में मौजूद “इंटरनेट पर मौजूद वे सभी लोग जिनके पास यह लिंक है” सेटिंग का इस्तेमाल करके शेयर किया गया था.
- OAuth 2 क्लाइंट आईडी
- उपयोगकर्ता के मालिकाना हक वाले डेटा का ऐक्सेस मांगने के लिए इस्तेमाल किया जाने वाला क्रेडेंशियल. यह प्राइमरी क्रेडेंशियल है. इसका इस्तेमाल, Google Workspace API की मदद से डेटा ऐक्सेस करने का अनुरोध करते समय किया जाता है. इस क्रेडेंशियल के लिए, उपयोगकर्ता की सहमति ज़रूरी है.
- क्लाइंट सीक्रेट
- वर्णों की यह स्ट्रिंग सिर्फ़ आपके ऐप्लिकेशन और अनुमति देने वाले सर्वर को पता होनी चाहिए. क्लाइंट सीक्रेट, सिर्फ़ अनुमति वाले अनुरोध करने वालों को टोकन देकर, उपयोगकर्ता के डेटा की सुरक्षा करता है. आपको अपने ऐप्लिकेशन में, एन्क्रिप्ट (सुरक्षित) न किया गया क्लाइंट सीक्रेट कभी शामिल नहीं करना चाहिए. हमारा सुझाव है कि क्लाइंट सीक्रेट को सुरक्षित तरीके से सेव रखें. ज़्यादा जानकारी के लिए, क्लाइंट के क्रेडेंशियल सुरक्षित तरीके से मैनेज करना देखें.
- सेवा खाते की कुंजियां
- सेवा खाते इसका इस्तेमाल, Google की किसी सेवा को ऐक्सेस करने की अनुमति पाने के लिए करते हैं.
- सेवा खाता
- सर्वर-टू-सर्वर इंटरैक्शन के लिए इस्तेमाल किया जाने वाला क्रेडेंशियल, जैसे कि फ़ेसलेस ऐप्लिकेशन जो कुछ डेटा को ऐक्सेस करने या कोई कार्रवाई करने के लिए, प्रोसेस के तौर पर काम करता है. आम तौर पर, सेवा खातों का इस्तेमाल क्लाउड-आधारित डेटा और कार्रवाइयों को ऐक्सेस करने के लिए किया जाता है. हालांकि, जब पूरे डोमेन के अधिकार देने वाली संस्था या निकाय के साथ इसका इस्तेमाल किया जाता है, तो उपयोगकर्ता के डेटा को ऐक्सेस करने के लिए इनका इस्तेमाल किया जा सकता है.
- दायरा
OAuth 2.0 यूआरआई स्ट्रिंग, जो किसी ऐप्लिकेशन को दिए गए संसाधनों या कार्रवाइयों के ऐक्सेस का लेवल तय करती है. Google Workspace के लिए, अनुमति देने के दायरे वाले यूआरआई में Google Workspace ऐप्लिकेशन का नाम, यह किस तरह का डेटा ऐक्सेस करता है, और ऐक्सेस का लेवल शामिल होता है. आपके ऐप्लिकेशन के उपयोगकर्ता, अनुरोध किए गए दायरों की समीक्षा करके यह चुन सकते हैं कि उन्हें किस तरह का ऐक्सेस देना है. इसके बाद, Google का पुष्टि करने वाला सर्वर आपके ऐप्लिकेशन के लिए, ऐक्सेस टोकन में अनुमति वाले स्कोप दिखाता है. ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन के लिए स्कोप चुनने का तरीका देखें.
- ऑथराइज़ेशन सर्वर
Google का सर्वर, जो किसी ऐप्लिकेशन के अनुरोध किए गए डेटा और कार्रवाइयों का ऐक्सेस ऐक्सेस टोकन का इस्तेमाल करके देता है.
- ऑथराइज़ेशन कोड
ऐक्सेस टोकन पाने के लिए इस्तेमाल किए जाने वाले ऑथराइज़ेशन सर्वर से भेजा गया कोड. कोड की ज़रूरत सिर्फ़ तब होती है, जब आपका ऐप्लिकेशन टाइप वेब सर्वर ऐप्लिकेशन या इंस्टॉल किया गया ऐप्लिकेशन हो.
- ऐक्सेस टोकन
Google Workspace API का ऐक्सेस देने वाला टोकन. एक ऐक्सेस टोकन, कई एपीआई के ऐक्सेस के लिए अलग-अलग डिग्री दे सकता है. इसे स्कोप कहा जाता है. आपके ऐप्लिकेशन का ऑथराइज़ेशन कोड, ऐक्सेस टोकन का अनुरोध करता है. साथ ही, उसका इस्तेमाल Google Workspace API को शुरू करने के लिए करता है.
- संसाधन सर्वर
उस एपीआई को होस्ट करने वाला सर्वर जिसे आपका ऐप्लिकेशन कॉल करना चाहता है.
- OAuth 2.0 फ़्रेमवर्क
यह एक मानक है, जिसका इस्तेमाल करके आपका ऐप्लिकेशन उसे “किसी और को सुरक्षित ऐक्सेस” दे सकता है या ऐप्लिकेशन के उपयोगकर्ता की ओर से, डेटा और कार्रवाइयों का ऐक्सेस दे सकता है. आपके ऐप्लिकेशन में पुष्टि करने और अनुमति देने के जो तरीके इस्तेमाल किए जाते हैं उनसे OAuth 2.0 फ़्रेमवर्क को लागू करने का पता चलता है.
- प्रिंसिपल
ऐसी इकाई जिसे आइडेंटिटी के नाम से भी जाना जाता है. यह इकाई, संसाधन का ऐक्सेस दे सकती है. Google Workspace API में दो तरह के मुख्य खाते काम करते हैं: उपयोगकर्ता खाते और सेवा खाते. ज़्यादा जानकारी के लिए, प्रिंसिपल देखें.
- डेटा टाइप
पुष्टि करने और अनुमति देने के संदर्भ में, डेटा टाइप उस इकाई के बारे में बताता है जिसके पास उस डेटा का मालिकाना हक होता है जिसे आपका ऐप्लिकेशन ऐक्सेस करने की कोशिश कर रहा है. डेटा टाइप तीन तरह के होते हैं:
- सार्वजनिक डोमेन में उपलब्ध डेटा
- ऐसा डेटा जिसे कोई भी ऐक्सेस कर सकता है, जैसे कि Google Maps का कुछ डेटा. आम तौर पर, यह डेटा एपीआई पासकोड का इस्तेमाल करके ऐक्सेस किया जाता है.
- असली उपयोगकर्ता का डेटा
- किसी खास असली उपयोगकर्ता या ग्रुप से जुड़ा डेटा, जैसे कि किसी उपयोगकर्ता की Google Drive की फ़ाइलें. आम तौर पर, इस तरह के डेटा को OAuth 2 क्लाइंट आईडी या सेवा खाते का इस्तेमाल करके ऐक्सेस किया जाता है.
- Cloud डेटा
- Google Cloud प्रोजेक्ट के मालिकाना हक वाला डेटा. इस तरह का डेटा आम तौर पर सेवा खाते से ऐक्सेस किया जाता है.
- उपयोगकर्ता की सहमति
अनुमति देने का एक चरण, जिसमें आपके ऐप्लिकेशन के उपयोगकर्ता को डेटा ऐक्सेस करने और उपयोगकर्ता की ओर से कार्रवाइयां करने की अनुमति देनी होती है.
- ऐप्लिकेशन का टाइप
उस तरह का ऐप्लिकेशन बनाएं जो आपको बनाना है. Google Cloud Console का इस्तेमाल करके क्रेडेंशियल बनाते समय, आपसे ऐप्लिकेशन का टाइप चुनने के लिए कहा जाता है. ऐप्लिकेशन के टाइप ये हैं: वेब ऐप्लिकेशन (JavaScript), Android, Chrome ऐप्लिकेशन, iOS, टीवी और सीमित इनपुट डिवाइस, डेस्कटॉप ऐप्लिकेशन (जिसे "इंस्टॉल किया गया ऐप्लिकेशन" भी कहा जाता है), और Universal Windows Platform (UWP).
- सेवा खाता
यह एक खास तरह का Google खाता है, जो किसी ऐसे गैर-मानव उपयोगकर्ता के तौर पर है जिसे डेटा ऐक्सेस करने की अनुमति होनी चाहिए और जिसकी पुष्टि करनी हो. आपका ऐप्लिकेशन Google API को कॉल करने के लिए सेवा खाते की पहचान मान लेता है, ताकि उपयोगकर्ता सीधे तौर पर शामिल न हों. अपने-आप में, सेवा खातों का इस्तेमाल, उपयोगकर्ता का डेटा ऐक्सेस करने के लिए नहीं किया जा सकता. हालांकि, Workspace API की मदद से, आम तौर पर इस डेटा को ऐक्सेस किया जा सकता है. हालांकि, कोई सेवा खाता, पूरे डोमेन को अधिकार देने की सुविधा लागू करके, उपयोगकर्ता के डेटा को ऐक्सेस कर सकता है. ज़्यादा जानकारी के लिए, सेवा खातों को समझना देखें.
- पूरे डोमेन पर अधिकार देना
एडमिन से जुड़ी यह सुविधा किसी ऐप्लिकेशन को, Google Workspace संगठन के उपयोगकर्ताओं का डेटा ऐक्सेस करने की अनुमति दे सकती है. पूरा डोमेन सौंपे जाने की सुविधा का इस्तेमाल, उपयोगकर्ता के डेटा पर एडमिन से जुड़े काम करने के लिए किया जा सकता है. इस तरह से अधिकार देने के लिए, Google Workspace एडमिन, OAuth 2.0 वाले सेवा खातों का इस्तेमाल करते हैं. इस सुविधा की वजह से, सिर्फ़ सुपर एडमिन पूरे डोमेन को अधिकार देने की सुविधा चालू कर सकते हैं. ज़्यादा जानकारी के लिए, सेवा खाते को पूरे डोमेन पर अधिकार देना देखें.
अगला कदम
अपने ऐप्लिकेशन की OAuth सहमति वाली स्क्रीन कॉन्फ़िगर करें, ताकि उपयोगकर्ता यह समझ सकें और स्वीकार कर सकें कि आपके ऐप्लिकेशन के पास उनके डेटा का कौनसा ऐक्सेस है.