वेब के लिए अनुमति देना

वेब ऐप्लिकेशन को Google API को सुरक्षित तरीके से कॉल करने के लिए, ऐक्सेस टोकन पाना होगा.

Google Identity Services की JavaScript लाइब्रेरी, उपयोगकर्ता के साइन-इन के लिए पुष्टि करने और Google API के साथ इस्तेमाल करने के लिए ऐक्सेस टोकन पाने की अनुमति देने, दोनों के लिए काम करती है. इस लाइब्रेरी का इस्तेमाल सिर्फ़ ब्राउज़र में किया जा सकता है.

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

इन गाइड में, अनुमति देने और डेटा शेयर करने से जुड़े विषयों के बारे में बताया गया है.

उपयोगकर्ता की अनुमति लेने की सुविधा कैसे काम करती है लेख में, उपयोगकर्ता की अनुमति लेने की सुविधा के हर चरण के बारे में विस्तार से बताया गया है. साथ ही, इसमें उपयोगकर्ता के डायलॉग बॉक्स के उदाहरण भी शामिल हैं.

अगर आपको पुष्टि करने और उपयोगकर्ता के साइन-अप और साइन-इन करने की प्रोसेस को लागू करने के बारे में मदद चाहिए, तो 'Google से साइन इन करें' लेख पढ़ें.

इस लाइब्रेरी का इस्तेमाल, सर्वर-साइड JavaScript फ़्रेमवर्क के साथ नहीं किया जा सकता. जैसे, Node.js. इसके बजाय, Google की Node.js क्लाइंट लाइब्रेरी का इस्तेमाल करें.

क्या बदलाव हुए हैं

उपयोगकर्ताओं के लिए, Google Identity Services लाइब्रेरी, JavaScript की पिछली लाइब्रेरी की तुलना में इस्तेमाल करने में ज़्यादा आसान है. इसमें ये सुधार शामिल हैं:

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

डेवलपर के लिए, हमारा फ़ोकस इन बातों पर रहा है: जटिलता को कम करना, सुरक्षा को बेहतर बनाना, और इंटिग्रेशन को आसान बनाना. इनमें से कुछ बदलाव ये हैं:

  • साइन-इन के लिए उपयोगकर्ता की पुष्टि और Google API को कॉल करने के लिए ऐक्सेस टोकन पाने के लिए इस्तेमाल की जाने वाली अनुमति, JavaScript ऑब्जेक्ट और तरीकों के दो अलग-अलग सेट हैं. इससे पुष्टि करने या अनुमति देने की प्रोसेस आसान हो जाती है और इसमें कम जानकारी देनी पड़ती है.
  • अब एक ही JavaScript लाइब्रेरी इन दोनों के साथ काम करती है:
    • OAuth 2.0 इंप्लिसिट फ़्लो का इस्तेमाल, ब्राउज़र में इस्तेमाल करने के लिए ऐक्सेस टोकन पाने के लिए किया जाता है
    • OAuth 2.0 ऑथराइज़ेशन कोड फ़्लो को ऑफ़लाइन ऐक्सेस भी कहा जाता है. यह आपके बैकएंड प्लैटफ़ॉर्म को सुरक्षित तरीके से ऑथराइज़ेशन कोड डिलीवर करता है. यहां इसे ऐक्सेस टोकन और रीफ़्रेश टोकन के लिए बदला जा सकता है. पहले, इन फ़्लो को सिर्फ़ कई लाइब्रेरी का इस्तेमाल करके और OAuth 2.0 एंडपॉइंट पर सीधे कॉल करके ऐक्सेस किया जा सकता था. एक ही लाइब्रेरी का इस्तेमाल करने से, इंटिग्रेशन में लगने वाला समय और मेहनत कम हो जाती है. इसके बजाय, कई लाइब्रेरी और OAuth 2.0 के कॉन्सेप्ट को शामिल करने और सीखने के लिए, एक ही यूनीफ़ाइड इंटरफ़ेस पर फ़ोकस किया जा सकता है.
  • getter स्टाइल वाले फ़ंक्शन के ज़रिए इंडायरेक्शन को हटा दिया गया है, ताकि इसे आसानी से समझा जा सके और पढ़ा जा सके.
  • अनुमति से जुड़े जवाबों को मैनेज करते समय, आपके पास यह चुनने का विकल्प होता है कि अनुरोधों को पूरा करने के लिए, Promise का इस्तेमाल करना है या नहीं. यह फ़ैसला आपके लिए नहीं किया जाता.
  • JavaScript के लिए, Google API क्लाइंट लाइब्रेरी को इन बदलावों के साथ अपडेट किया गया है:
    • gapi.auth2 मॉड्यूल और उससे जुड़े ऑब्जेक्ट और तरीके अब आपके लिए बैकग्राउंड में अपने-आप लोड नहीं होते. इन्हें Google Identity Services लाइब्रेरी के ज़्यादा साफ़ तौर पर बताए गए ऑब्जेक्ट और तरीकों से बदल दिया गया है.
    • उपयोगकर्ता की सुरक्षा और जागरूकता को बेहतर बनाने के लिए, खत्म हो चुके ऐक्सेस टोकन के अपने-आप रीफ़्रेश होने की सुविधा हटा दी गई है. ऐक्सेस टोकन की समयसीमा खत्म होने के बाद, आपके ऐप्लिकेशन को Google API से मिलने वाले गड़बड़ी के जवाबों को मैनेज करना होगा. साथ ही, नया और मान्य ऐक्सेस टोकन पाने के लिए अनुरोध करना होगा.
    • पहचान की पुष्टि और अनुमति देने की प्रोसेस को अलग-अलग रखने के लिए, अब एक साथ किसी उपयोगकर्ता को आपके ऐप्लिकेशन और उसके Google खाते में साइन इन करने की सुविधा उपलब्ध नहीं है. साथ ही, ऐक्सेस टोकन जारी करने की सुविधा भी उपलब्ध नहीं है. पहले, ऐक्सेस टोकन का अनुरोध करने पर, उपयोगकर्ताओं को उनके Google खाते में भी साइन इन कर दिया जाता था. साथ ही, उपयोगकर्ता की पुष्टि करने के लिए, JWT आईडी टोकन क्रेडेंशियल वापस भेज दिया जाता था.
  • उपयोगकर्ता की सुरक्षा और निजता को बढ़ाने के लिए, अनुमति देने के लिए हर उपयोगकर्ता को जारी किए गए क्रेडेंशियल, कम से कम अधिकार के सिद्धांत का पालन करते हैं. इनमें सिर्फ़ ऐक्सेस टोकन और इसे मैनेज करने के लिए ज़रूरी जानकारी शामिल होती है.