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

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

नई सुविधाएं

Identity Platform में पहले से ही, इस सुविधा से जुड़ी सुविधाओं में काफ़ी सुधार किए गए हैं Google Identity टूलकिट:

  • नया Admin console

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

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

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

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

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

  • Firebase के सभी वर्शन का ऐक्सेस

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

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

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

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

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

  • नए SDK टूल

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

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

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

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

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

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

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

  • पहचान ज़ाहिर करने वाली कंपनियां

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

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

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

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

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

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

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

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

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

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

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

Identity Platform में, Google Identity Toolkit की सुविधाओं को दो कॉम्पोनेंट में बांटा गया है:

  • क्लाइंट और सर्वर एसडीके

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

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

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

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

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

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

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

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

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

  2. मार्केटप्लेस में, Identity Platform पर जाएं और 'Identity Platform चालू करें' को चुनें

  3. सेवा खाते पेज खोलें. यहां आपको वह सेवा खाता दिखेगा इसे Identity Toolkit के लिए पहले कॉन्फ़िगर किया गया था.

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

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

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

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

    1. Node.js Admin SDK टूल को npm की मदद से इंस्टॉल किया जा सकता है:

      $ 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 Toolkit विजेट, एक कुकी सेट की गई, जिसका इस्तेमाल सेशन को बूटस्ट्रैप करें. इस कुकी की अवधि दो हफ़्ते थी और इसका इस्तेमाल उपयोगकर्ता को खाता प्रबंधन विजेट पर पासवर्ड और ईमेल पता बदलने के लिए इस विजेट का उपयोग कर सकते हैं. कुछ सूचनाएं मिल रही हैं साइटों ने इस कुकी का इस्तेमाल, साइट पर मौजूद अन्य सभी पेज के अनुरोधों की पुष्टि करने के लिए किया है. अन्य साइटों ने कुकी का उपयोग करके फ़्रेमवर्क के कुकी मैनेजमेंट सिस्टम का इस्तेमाल करते हैं.

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

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

  • वेब पर साइन इन करने का फ़्लो

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

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

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

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

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

  • signOutUrl मौजूद नहीं है

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

  • oobActionUrl मौजूद नहीं है

    ईमेल भेजने का काम अब Identity Platform मैनेज करता है और इसे Firebase कंसोल.

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

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

पहला चरण: सर्वर कोड बदलना

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

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

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

वेब एपीआई का संदर्भ देखें.

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

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

    1. अपना प्रोजेक्ट इसमें खोलें Cloud Console.
    2. सेवा देने वाली कंपनियां पेज पर, ऐप्लिकेशन सेटअप की जानकारी पर क्लिक करें. Identity Platform को शुरू करने वाला कोड स्निपेट दिखता है.
    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 Toolkit SDK टूल को हटाएं.

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

    1. Identity प्लैटफ़ॉर्म से साइन इन करने के बाद, इसके ज़रिए आईडी टोकन पाएं 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 और अपना Identity टूलकिट प्रोजेक्ट चुनें.

  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:23.0.0'
    compile 'com.google.android.gms:play-services-auth:21.2.0'
    

दूसरा चरण: Identity Toolkit SDK टूल हटाना

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

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

  1. FirebaseUI पुष्टि जोड़ें आपके ऐप्लिकेशन को मिलता है.

  2. अपने ऐप्लिकेशन में, Identity Toolkit SDK टूल के कॉल को FirebaseUI.

iOS

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

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

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

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

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

दूसरा चरण: Identity Toolkit SDK टूल हटाना

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

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

  1. अपने ऐप्लिकेशन में FirebaseUI Auth जोड़ें.

  2. अपने ऐप्लिकेशन में, Identity Toolkit SDK टूल के कॉल को FirebaseUI.