Google Identity टूलकिट से Google Cloud' Identity Platform पर माइग्रेट करें

Google Identity Toolkit का सबसे नया वर्शन पहचान प्लैटफ़ॉर्म और Firebase से पुष्टि करने के तौर पर रिलीज़ किया गया है. आने वाले समय में, Identity टूलकिट पर सुविधाओं का काम रोक दिया जाएगा. सभी नए फ़ीचर डेवलपमेंट, Identity प्लैटफ़ॉर्म और Firebase से पुष्टि करने पर किए जाएंगे. हम Identity टूलकिट डेवलपर को सलाह देते हैं कि वे जल्द से जल्द इन प्लैटफ़ॉर्म पर जाएं.

नई सुविधाएं

Identity Platform में, Google Identity टूलकिट की तुलना में पहले से ही काफ़ी सुविधाएं हैं:

  • नया Admin console

    Identity Platform में एक नया डेवलपर कंसोल है, जिससे आपको अपने उपयोगकर्ताओं को देखने, उनमें बदलाव करने, और उन्हें मिटाने की सुविधा मिलती है. इससे अपने साइन-इन और साइन-अप फ़्लो को डीबग करने में मदद मिल सकती है. कंसोल आपको पुष्टि करने के तरीके कॉन्फ़िगर करने और ईमेल टेंप्लेट को पसंद के मुताबिक बनाने की सुविधा भी देता है.

  • पुष्टि करने के नए तरीके

    Identity Platform, एसएएमएल और OIDC जैसे एंटरप्राइज़ फ़ेडरेशन स्टैंडर्ड के साथ काम करता है. इससे आप SaaS ऐप्लिकेशन और सेवाओं को बड़े पैमाने पर इस्तेमाल कर सकते हैं. Identity Platform, GitHub, Microsoft, Yahoo वगैरह जैसी सेवा देने वाली कंपनियों के लिए भी सहायता देता है. यूनीक यूज़र आईडी बनाने के लिए, पहचान छिपाकर साइन इन करने की सुविधा का इस्तेमाल किया जा सकता है. इसके लिए, उपयोगकर्ता को किसी भी साइन-इन या साइन-अप प्रोसेस से गुज़रना ज़रूरी नहीं है. इसकी मदद से, किसी सामान्य उपयोगकर्ता की तरह ही पुष्टि किए गए एपीआई कॉल किए जा सकते हैं. जब कोई उपयोगकर्ता किसी खाते के लिए साइन अप करने का फ़ैसला लेता है, तब सभी गतिविधियों को एक ही यूज़र आईडी से सुरक्षित रखा जाता है. यह सर्वर साइड शॉपिंग कार्ट या ऐसे दूसरे ऐप्लिकेशन के लिए अहम है जहां आपको उपयोगकर्ताओं को साइन-अप फ़्लो से भेजने से पहले उनसे जुड़ना हो.

  • सेवा स्तर के समझौतों और क्लाउड सहायता की मदद से, भरोसे के साथ आगे बढ़ना

    Identity Platform को, Google के भरोसेमंद इंफ़्रास्ट्रक्चर पर बनाया गया है. यह सेवा स्तर के समझौते और Google Cloud की सहायता देता है. इसका मतलब है कि बेहतर सेवाओं के साथ अपनी सेवा को बेहतर बनाया जा सकता है. साथ ही, आपकी ज़रूरत के हिसाब से सेवाएं, उपलब्धता, और बढ़ाए जा सकने की योग्यता उपलब्ध कराने के लिए Google पर भरोसा किया जा सकता है.

  • सभी Firebase का ऐक्सेस

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

  • अपडेट किए गए यूज़र इंटरफ़ेस (यूआई)

    Google की सबसे नई UX रिसर्च के आधार पर, हमने यूज़र इंटरफ़ेस (यूआई) फ़्लो को पूरी तरह से फिर से तैयार किया है. इसमें पासवर्ड वापस पाना, खाता लिंक करना, नए/मौजूदा खाता साफ़ करने के फ़्लो शामिल हैं. कोड करने और डीबग करने में अक्सर काफ़ी समय लगता है. यह Android पर, पासवर्ड के लिए Smart Lock की सुविधा को इंटिग्रेट करता है. इससे, हिस्सा लेने वाले ऐप्लिकेशन के लिए, साइन इन और साइन अप कन्वर्ज़न में काफ़ी सुधार हुआ है. आपके ऐप्लिकेशन के हिसाब से, थीम में आसानी से बदलाव किए जा सकते हैं. साथ ही, पसंद के मुताबिक बनाए जा सकने वाले Android और iOS वर्शन को ओपन सोर्स बनाया गया है.

  • सर्वर का आसान सेटअप

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

  • नए SDK टूल

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

  • मोबाइल ऐप्लिकेशन के लिए सेशन मैनेजमेंट

    Identity टूलकिट की मदद से, ऐप्लिकेशन ने अपने सेशन की स्थिति तय की है. यह स्थिति, Identity Toolkit के शुरुआती पुष्टि करने वाले इवेंट पर आधारित है. Identity Platform, ऐसी बैकएंड सेवा का इस्तेमाल करता है जो रीफ़्रेश टोकन लेता है. इस टोकन को पुष्टि करने वाले इवेंट से बदला जाता है. साथ ही, इसे Android, iOS, और JavaScript के लिए एक घंटे के ऐक्सेस टोकन में बदला जाता है. जब कोई उपयोगकर्ता अपना पासवर्ड बदलता है, तो रीफ़्रेश टोकन नए ऐक्सेस टोकन जनरेट नहीं कर पाएंगे. इस वजह से, ऐक्सेस तब तक बंद रखेगा, जब तक उपयोगकर्ता उस डिवाइस पर फिर से पुष्टि नहीं करता.

सुविधा में अंतर

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

सर्वर के साइड में अंतर

REST API, खाते की पुष्टि करने के लॉजिक, और प्राइमरी उपयोगकर्ता के डेटाबेस के साथ, पहचान टूलकिट की मुख्य सेवा को सिर्फ़ मामूली अपडेट किया गया है. हालांकि, कुछ सुविधाओं और अपनी सेवा में Identity Platform को इंटिग्रेट करने का तरीका बदल गया है.

  • पहचान की सेवा देने वाली कंपनियां

    PayPal और AOL काम नहीं करते. जिन उपयोगकर्ताओं के पास इन आईडीपी का खाता है वे अब भी पासवर्ड वापस पाने के फ़्लो की मदद से आपके ऐप्लिकेशन में साइन इन कर सकते हैं और अपने खाते के लिए पासवर्ड सेट कर सकते हैं.

  • सर्वर लाइब्रेरी

    फ़िलहाल, Java, Node.js, Python, Go, और C# के लिए एडमिन SDK उपलब्ध हैं.

  • खाते के मैनेजमेंट से जुड़े ईमेल

    पासवर्ड रीसेट करने, ईमेल की पुष्टि करने, और ईमेल में बदलाव करने के मैसेज Firebase से या डेवलपर के मेल सर्वर से किए जा सकते हैं. फ़िलहाल, ईमेल टेंप्लेट यूज़र इंटरफ़ेस (यूआई) से सिर्फ़ सीमित तौर पर पसंद के मुताबिक बनाने की सुविधा देते हैं, लेकिन एडमिन SDK की मदद से इन्हें ज़्यादा पसंद के मुताबिक बनाया जा सकता है

  • ईमेल पता बदलने की पुष्टि करना

    Identity टूलकिट में, जब कोई उपयोगकर्ता अपना ईमेल पता बदलने का फ़ैसला करता है, तो वह उस नए पते पर एक ईमेल भेजता है जिसमें ईमेल पता बदलने की प्रक्रिया को जारी रखने के लिए एक लिंक होता है.

    Firebase, ईमेल पते में होने वाले बदलाव की पुष्टि करता है. इसके लिए वह पुराने ईमेल पते पर, बदलाव को रद्द करने के लिंक के साथ एक ईमेल भेजता है.

  • आईडीपी रोल आउट

    Identity Toolkit में आपके साइन-इन सिस्टम में पहचान देने वाली सेवा को धीरे-धीरे जोड़ने की सुविधा थी, ताकि आप अपने सहायता अनुरोधों पर पड़ने वाले असर के साथ प्रयोग कर सकें. Firebase से पुष्टि करने की प्रक्रिया में इस सुविधा को हटा दिया गया था.

क्लाइंट साइड में अंतर

Identity Platform में, Google Identity टूलकिट से मिलने वाली सुविधाएं दो कॉम्पोनेंट में बांट दी जाती हैं:

  • क्लाइंट और सर्वर SDK टूल

    Identity Platform में, Identity टूलकिट के REST API से मिलने वाले फ़ंक्शन को Android, iOS, और JavaScript के लिए उपलब्ध क्लाइंट SDK टूल में पैक किया गया है. इस SDK टूल का इस्तेमाल, उपयोगकर्ताओं के साइन इन और साइन अप करने, उपयोगकर्ता की प्रोफ़ाइल की जानकारी ऐक्सेस करने, खातों को लिंक करने, अपडेट करने और उन्हें मिटाने के साथ-साथ REST कॉल के ज़रिए बैक एंड सेवा से संपर्क करने के बजाय, क्लाइंट SDK टूल का इस्तेमाल करके पासवर्ड रीसेट करने के लिए किया जा सकता है.

  • यूज़र इंटरफ़ेस (यूआई) विजेट

    साइन इन, साइन-अप, पासवर्ड वापस पाने, और खाता लिंक करने की प्रक्रिया को मैनेज करने वाले सभी यूज़र इंटरफ़ेस (यूआई) फ़्लो को क्लाइंट SDK टूल की मदद से फिर से बनाया गया है और इन्हें लॉगिन विजेट के तौर पर पैकेज किया गया है. ये iOS, Android, और वेब के लिए ओपन सोर्स SDK टूल के तौर पर उपलब्ध हैं. साथ ही, इनकी मदद से Identity टूलकिट की मदद से फ़्लो को अपनी पसंद के मुताबिक बनाया जा सकता है.

अतिरिक्त अंतर में ये शामिल हैं:

  • सेशन और माइग्रेशन

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

शुरू करने से पहले

Identity Toolkit से Identity Platform पर माइग्रेट करने से पहले, आपको इन बातों का ध्यान रखना होगा:

  1. Cloud Console खोलें और अपना Identity टूलकिट प्रोजेक्ट चुनें.

  2. मार्केटप्लेस में जाकर, Identity प्लैटफ़ॉर्म ब्राउज़ करें और 'पहचान प्लैटफ़ॉर्म चालू करें' चुनें

  3. सेवा खाते पेज खोलें. यहां आप उस सेवा खाते को देख सकते हैं जिसे आपने पहचान टूलकिट के लिए पहले कॉन्फ़िगर किया था.

  4. सेवा खाते के आगे, > कुंजी बनाएं पर क्लिक करें. इसके बाद, निजी कुंजी बनाएं डायलॉग में, कुंजी के टाइप को JSON पर सेट करें और बनाएं पर क्लिक करें. आपके सेवा खाते के क्रेडेंशियल वाली एक JSON फ़ाइल डाउनलोड की जाती है. अगले चरण में, SDK टूल शुरू करने के लिए आपको इसकी ज़रूरत होगी.

  5. Cloud Console पर वापस जाएं. प्रोवाइडर सेक्शन में, 'ईमेल/पासवर्ड' साइन इन करने के तरीके में, ईमेल टेंप्लेट पेज खोलें. इसके बाद, अपने ऐप्लिकेशन के टेंप्लेट को पसंद के मुताबिक बनाया जा सकता है.

    Identity टूलकिट में, जब उपयोगकर्ता पासवर्ड रीसेट करते हैं, ईमेल पते बदलते हैं या अपने ईमेल पतों की पुष्टि करते हैं, तो आपको Identity Toolkit सर्वर से एक OOB कोड लेना होगा. इसके बाद, उपयोगकर्ताओं को वह कोड ईमेल से भेजना होगा. Identity Platform, आपके कॉन्फ़िगर किए गए टेंप्लेट के आधार पर ईमेल भेजता है. इसके लिए, आपको कोई और कार्रवाई करने की ज़रूरत नहीं होती.

  6. ज़रूरी नहीं: अगर आपको अपने सर्वर पर Identity Platform की सेवाओं को ऐक्सेस करना है, तो Firebase SDK टूल इंस्टॉल करें.

    1. npm के साथ Node.js एडमिन SDK टूल को इंस्टॉल किया जा सकता है:

      $ npm init
      $ npm install --save firebase-admin
      
    2. अपने कोड में, Firebase को ऐक्सेस करने के लिए इनका इस्तेमाल करें:

      var admin = require('firebase-admin');
      var app = admin.initializeApp({
        credential: admin.credential.cert('path/to/serviceAccountCredentials.json')
      });
      

इसके बाद, अपने ऐप्लिकेशन के प्लैटफ़ॉर्म के लिए माइग्रेशन के चरण पूरे करें: Android, iOS, वेब.

सर्वर और JavaScript

अहम बदलाव

पहचान टूलकिट से पहचान प्लैटफ़ॉर्म को वेब पर लागू करने में कई और अंतर हैं.

  • वेब सेशन मैनेजमेंट

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

    Identity Platform के क्लाइंट SDK टूल अब आईडी टोकन मैनेज करते हैं. साथ ही, यह सेशन को अप-टू-डेट रखने के लिए, Identity Platforms के बैकएंड के साथ काम करते हैं. खाते में ज़रूरी बदलाव (जैसे, उपयोगकर्ता के पासवर्ड में बदलाव) होने पर बैकएंड की समयसीमा खत्म हो जाती है. आईडी टोकन, वेब क्लाइंट पर अपने-आप कुकी के तौर पर सेट नहीं होते हैं. साथ ही, ये सिर्फ़ एक घंटे के लिए उपलब्ध होते हैं. अगर आपको सिर्फ़ एक घंटे के सेशन की ज़रूरत नहीं है, तो आपके सभी पेज अनुरोधों की पुष्टि करने के लिए, आईडी टोकन को कुकी के तौर पर इस्तेमाल करना सही नहीं होता. इसके बजाय, आपको उपयोगकर्ता के लॉग इन करने पर लिसनर सेट अप करना होगा, आईडी टोकन पाना होगा, टोकन की पुष्टि करनी होगी, और अपने फ़्रेमवर्क के कुकी मैनेजमेंट सिस्टम की मदद से अपनी कुकी बनानी होगी.

    आपको अपने ऐप्लिकेशन की सुरक्षा ज़रूरतों के आधार पर अपनी कुकी का सेशन लाइफ़टाइम सेट करना होगा.

  • वेब साइन-इन फ़्लो

    पहले, जब साइन इन करना शुरू किया जाता था, तब उपयोगकर्ताओं को accountchooser.com पर रीडायरेक्ट किया जाता था. इससे उन्हें पता चलता था कि उपयोगकर्ता किस आइडेंटिफ़ायर का इस्तेमाल करना चाहते हैं. Identity Platform यूज़र इंटरफ़ेस (यूआई) फ़्लो अब साइन इन करने के तरीकों की सूची के साथ शुरू होता है. इसमें ईमेल का एक विकल्प शामिल है, जो वेब के लिए accountchooser.com पर जाता है और Android पर hintRequest API का इस्तेमाल करता है. इसके अलावा, अब यूज़र इंटरफ़ेस (यूआई) में ईमेल पतों की ज़रूरत नहीं है. इससे पहचान छिपाने वाले उपयोगकर्ताओं, पसंद के मुताबिक पुष्टि करने वाले उपयोगकर्ताओं या सेवा देने वाली ऐसी कंपनियों के उपयोगकर्ताओं की मदद करना आसान हो जाएगा जिनके लिए ईमेल पते की ज़रूरत नहीं है.

  • खाते के मैनेजमेंट का विजेट

    यह विजेट, यूज़र इंटरफ़ेस (यूआई) की सुविधा देता है. इसकी मदद से, उपयोगकर्ता अपने ईमेल पते बदल सकते हैं, पासवर्ड बदल सकते हैं या अपने खातों को आइडेंटिटी प्रोवाइडर से अनलिंक कर सकते हैं. फ़िलहाल, इस पर काम चल रहा है.

  • साइन-इन बटन/विजेट

    'साइन इन करें' बटन और उपयोगकर्ता कार्ड जैसे विजेट अब उपलब्ध नहीं कराए गए हैं. Firebase की पुष्टि करने वाले एपीआई का इस्तेमाल करके, इन्हें बहुत आसानी से बनाया जा सकता है.

  • कोई signOutUrl नहीं

    आपको firebase.auth.signOut() को कॉल करके, कॉलबैक को मैनेज करना होगा.

  • कोई oobActionUrl नहीं है

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

  • सीएसएस को पसंद के मुताबिक बनाना

    यूज़र इंटरफ़ेस (यूआई) विजेट मटीरियल डिज़ाइन लाइट स्टाइल का इस्तेमाल करता है, जिससे मटीरियल डिज़ाइन ऐनिमेशन को डाइनैमिक तरीके से जोड़ा जाता है.

चरण 1: सर्वर कोड बदलें

  1. अगर आपका सर्वर, वेब उपयोगकर्ता के सेशन को मैनेज करने के लिए, Identity टूलकिट टोकन (दो हफ़्ते के लिए मान्य) का इस्तेमाल करता है, तो आपको सर्वर को उसकी खुद की सेशन कुकी का इस्तेमाल करने के लिए बदलना होगा.

    1. आईडी टोकन की पुष्टि करने और उपयोगकर्ता के लिए सेशन कुकी सेट करने के लिए, एंडपॉइंट लागू करें. क्लाइंट ऐप्लिकेशन, इस एंडपॉइंट पर Firebase आईडी टोकन भेजता है.
    2. अगर आने वाले अनुरोध में आपकी खुद की सेशन कुकी शामिल है, तो आपके पास यह देखने का विकल्प होता है कि उपयोगकर्ता की पुष्टि की गई है या नहीं. अगर ऐसा नहीं है, तो इस अनुरोध को बिना पुष्टि वाला मानें.
    3. अगर आपको अपने किसी भी उपयोगकर्ता के लॉग इन किए हुए मौजूदा सेशन नहीं मिटाने हैं, तो आपको सभी Identity टूलकिट टोकन की समयसीमा खत्म होने के लिए दो हफ़्ते तक इंतज़ार करना होगा. इसके अलावा, तीसरे चरण में बताए गए तरीके से, अपने वेब ऐप्लिकेशन के लिए ड्यूअल टोकन की पुष्टि भी की जा सकती है.
  2. इसके बाद, क्योंकि आईडी टोकन पहचान टूलकिट टोकन से अलग होते हैं, इसलिए आपको अपने टोकन की पुष्टि करने वाले लॉजिक को अपडेट करना होगा. अपने सर्वर पर एडमिन SDK इंस्टॉल करें. इसके अलावा, अगर किसी ऐसी भाषा का इस्तेमाल किया जाता है जो एडमिन SDK के साथ काम नहीं करती, तो अपने एनवायरमेंट के लिए JWT टोकन की पुष्टि करने वाली लाइब्रेरी डाउनलोड करें और टोकन की पुष्टि करें.

  3. जब पहली बार ऊपर दिए गए अपडेट किए जाते हैं, तब भी आपके पास ऐसे कोड पाथ हो सकते हैं जो पहचान टूलकिट टोकन पर आधारित होते हैं. अगर आपके पास iOS या Android ऐप्लिकेशन हैं, तो नए कोड पाथ को सही तरीके से इस्तेमाल करने के लिए, उपयोगकर्ताओं को ऐप्लिकेशन के नए वर्शन पर अपग्रेड करना होगा. अगर उपयोगकर्ताओं को अपना ऐप्लिकेशन अपडेट करने के लिए मजबूर नहीं करना है, तो सर्वर की पुष्टि करने वाला अतिरिक्त लॉजिक जोड़ें. यह टोकन की जांच करता है. इससे यह भी तय होता है कि टोकन की पुष्टि करने के लिए, Firebase SDK टूल का इस्तेमाल करना है या पहचान टूलकिट SDK टूल का. अगर आपके पास सिर्फ़ वेब ऐप्लिकेशन है, तो पुष्टि करने के सभी नए अनुरोध, पहचान प्लैटफ़ॉर्म पर शिफ़्ट कर दिए जाएंगे. इसलिए, आपको सिर्फ़ आईडी टोकन की पुष्टि करने के तरीके इस्तेमाल करने होंगे.

Web API का संदर्भ देखें.

दूसरा चरण: अपना एचटीएमएल अपडेट करना

  1. अपने ऐप्लिकेशन में शुरू करने वाला कोड जोड़ें:

    1. अपना प्रोजेक्ट Cloud Console में खोलें.
    2. providers पेज पर, ऐप्लिकेशन के सेटअप की जानकारी पर क्लिक करें. पहचान प्लैटफ़ॉर्म शुरू करने वाला एक कोड स्निपेट दिखता है.
    3. अपने वेब पेज में, इनिशलाइज़ेशन स्निपेट को कॉपी करें और चिपकाएं.
  2. अपने ऐप्लिकेशन में पुष्टि करने वाला विजेट जोड़ें:

    <script src="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.js"></script>
    <link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.css" />
    <!-- *******************************************************************************************
       * TODO(DEVELOPER): Paste the initialization snippet from:
       * Firebase Console > Overview > Add Firebase to your web app. *
       ***************************************************************************************** -->
    <script type="text/javascript">
      // FirebaseUI config.
      var uiConfig = {
        'signInSuccessUrl': '<url-to-redirect-to-on-success>',
        'signInOptions': [
          // Leave the lines as is for the providers you want to offer your users.
          firebase.auth.GoogleAuthProvider.PROVIDER_ID,
          firebase.auth.FacebookAuthProvider.PROVIDER_ID,
          firebase.auth.TwitterAuthProvider.PROVIDER_ID,
          firebase.auth.GithubAuthProvider.PROVIDER_ID,
          firebase.auth.EmailAuthProvider.PROVIDER_ID
        ],
        // Terms of service url.
        'tosUrl': '<your-tos-url>',
      };
    
      // Initialize the FirebaseUI Widget using Firebase.
      var ui = new firebaseui.auth.AuthUI(firebase.auth());
      // The start method will wait until the DOM is loaded.
      ui.start('#firebaseui-auth-container', uiConfig);
    </script>
    
  3. अपने ऐप्लिकेशन से Identity टूलकिट SDK टूल हटाएं.

  4. अगर आपने सेशन मैनेजमेंट के लिए Identity टूलकिट आईडी टोकन पर भरोसा किया है, तो आपको क्लाइंट साइड में ये बदलाव करने होंगे:

    1. Identity Platform से साइन इन करने के बाद, firebase.auth().currentUser.getToken() पर कॉल करके आईडी टोकन पाएं.

    2. बैकएंड सर्वर पर आईडी टोकन भेजें, उसकी पुष्टि करें, और अपनी सेशन कुकी जारी करें.

      संवेदनशील कार्रवाइयां करते समय या अपने सर्वर पर प्रमाणित बदलाव के अनुरोध भेजते समय, पूरी तरह से सेशन कुकी पर निर्भर न रहें. आपको किसी दूसरी साइट से किए जाने वाले अनुरोध में जालसाज़ी (सीएसआरएफ़) से जुड़ी अतिरिक्त सुरक्षा देनी होगी.

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

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

तीसरा चरण: आईडीपी (IdP) के दूसरे वेबलिंक पर भेजने वाले यूआरएल अपडेट करना

  1. Cloud Console में, सेवा देने वाली कंपनी सेक्शन खोलें.

  2. जिन कंपनियों की मदद की जा रही है उनके लिए ये काम करें:

    1. साइन-इन करने वाले के नाम पर क्लिक करें.
    2. OAuth रीडायरेक्ट यूआरआई कॉपी करें.
    3. साइन इन करने वाली कंपनी के डेवलपर कंसोल में, OAuth रीडायरेक्ट यूआरआई अपडेट करें.

Android

पहला चरण: Firebase की मदद से, अपने ऐप्लिकेशन में Identity Platform जोड़ना

  1. Cloud Console खोलें और अपना पहचान टूलकिट प्रोजेक्ट चुनें.

  2. प्रोवाइडर पेज पर, ऐप्लिकेशन सेटअप की जानकारी पर क्लिक करें. इसके बाद, Android टैब चुनें और फिर Firebase में शुरू करें पर क्लिक करें. 'Firebase जोड़ें' डायलॉग में, अपने ऐप्लिकेशन के पैकेज का नाम और साइनिंग सर्टिफ़िकेट फ़िंगरप्रिंट डालें. इसके बाद, ऐप्लिकेशन जोड़ें पर क्लिक करें. इसके बाद, google-services.json कॉन्फ़िगरेशन फ़ाइल आपके कंप्यूटर पर डाउनलोड हो जाती है.

  3. कॉन्फ़िगरेशन फ़ाइल को अपने Android ऐप्लिकेशन मॉड्यूल की रूट डायरेक्ट्री में कॉपी करें. इस कॉन्फ़िगरेशन फ़ाइल में प्रोजेक्ट और Google OAuth क्लाइंट की जानकारी शामिल है.

  4. अपनी प्रोजेक्ट-लेवल की build.gradle फ़ाइल (<var>your-project</var>/build.gradle) में, defaultConfig सेक्शन में अपने ऐप्लिकेशन के पैकेज का नाम बताएं:

    defaultConfig {
       …..
      applicationId "com.your-app"
    }
    
  5. साथ ही, अपनी प्रोजेक्ट-लेवल की build.gradle फ़ाइल में, google-services प्लगिन को शामिल करने के लिए कोई डिपेंडेंसी जोड़ें:

    buildscript {
     dependencies {
       // Add this line
       classpath 'com.google.gms:google-services:3.0.0'
     }
    }
    
  6. अपने ऐप्लिकेशन के ऐप्लिकेशन-लेवल वाली build.gradle फ़ाइल (<var>my-project</var>/<var>app-module</var>/build.gradle) में, google-services प्लगिन को चालू करने के लिए, Android Gradle प्लग इन के बाद नीचे दी गई लाइन जोड़ें:

    apply plugin: 'com.android.application'
    // Add this line
    apply plugin: 'com.google.gms.google-services'
    

    Google-सेवाएं प्लग इन google-services.json फ़ाइल का इस्तेमाल करके आपके ऐप्लिकेशन को Firebase इस्तेमाल करने के लिए कॉन्फ़िगर करता है.

  7. साथ ही, ऐप्लिकेशन-लेवल की build.gradle फ़ाइल में, Firebase से पुष्टि करने की डिपेंडेंसी जोड़ें:

    compile 'com.google.firebase:firebase-auth:22.3.1'
    compile 'com.google.android.gms:play-services-auth:21.0.0'
    

दूसरा चरण: Identity टूलकिट SDK टूल को हटाना

  1. AndroidManifest.xml फ़ाइल से, Identity टूलकिट कॉन्फ़िगरेशन हटाएं. यह जानकारी google-service.json फ़ाइल में शामिल होती है और Google-सेवाएं प्लग इन की मदद से लोड होती है.
  2. अपने ऐप्लिकेशन से Identity टूलकिट SDK टूल हटाएं.

तीसरा चरण: अपने ऐप्लिकेशन में FirebaseUI जोड़ें

  1. अपने ऐप्लिकेशन में Firebaseयूज़र इंटरफ़ेस (यूआई) पुष्टि जोड़ें.

  2. अपने ऐप्लिकेशन में, पहचान टूलकिट SDK टूल के कॉल को FirebaseUI के कॉल से बदलें.

iOS

पहला चरण: अपने ऐप्लिकेशन में Firebase जोड़ना

  1. नीचे दिए गए निर्देशों का पालन करके, अपने ऐप्लिकेशन में क्लाइंट SDK टूल जोड़ें:

    $ cd your-project directory
    $ pod init
    $ pod 'Firebase'
    
  2. Cloud Console खोलें और अपना पहचान टूलकिट प्रोजेक्ट चुनें.

  3. प्रोवाइडर पेज पर, ऐप्लिकेशन सेटअप की जानकारी पर क्लिक करें. इसके बाद, iOS टैब चुनें और फिर Firebase में शुरू करें पर क्लिक करें. 'Firebase जोड़ें' डायलॉग में, अपने ऐप्लिकेशन के पैकेज का नाम और साइनिंग सर्टिफ़िकेट का फ़िंगरप्रिंट दें. इसके बाद, ऐप्लिकेशन जोड़ें पर क्लिक करें. इसके बाद, google-services.json की कॉन्फ़िगरेशन फ़ाइल आपके कंप्यूटर पर डाउनलोड हो जाएगी. 'Firebase जोड़ें' डायलॉग में, अपने ऐप्लिकेशन का बंडल आईडी और App Store आईडी दें. इसके बाद, ऐप्लिकेशन जोड़ें पर क्लिक करें. इसके बाद, GoogleService-Info.plist की कॉन्फ़िगरेशन फ़ाइल आपके कंप्यूटर पर डाउनलोड हो जाती है. अगर आपके प्रोजेक्ट में एक से ज़्यादा बंडल आईडी हैं, तो हर बंडल आईडी Firebase कंसोल से कनेक्ट होना चाहिए, ताकि उसके पास अपनी GoogleService-Info.plist फ़ाइल हो.

  4. कॉन्फ़िगरेशन फ़ाइल को अपने Xcode प्रोजेक्ट के रूट में कॉपी करें और सभी टारगेट में जोड़ें.

दूसरा चरण: Identity टूलकिट SDK टूल को हटाना

  1. अपने ऐप्लिकेशन की Podfile से GoogleIdentityToolkit को हटाएं.
  2. pod install निर्देश चलाएं.

तीसरा चरण: अपने ऐप्लिकेशन में FirebaseUI जोड़ें

  1. अपने ऐप्लिकेशन में Firebaseयूज़र इंटरफ़ेस (यूआई) पुष्टि जोड़ें.

  2. अपने ऐप्लिकेशन में, पहचान टूलकिट SDK टूल के कॉल को FirebaseUI के कॉल से बदलें.