अपने ऐप्लिकेशन के साथ Authentication एम्युलेटर का इस्तेमाल करने से पहले, पक्का करें कि आपको पूरे Firebase Local Emulator Suite वर्कफ़्लो के बारे में जानकारी है, और यह कि आप इंस्टॉल और कॉन्फ़िगर Local Emulator Suite और इसके सीएलआई निर्देशों को देखें.
यह विषय माना जाता है कि आपको पहले से ही प्रोडक्शन के लिए Firebase Authentication समाधान. अगर ज़रूरी हो, तो दस्तावेज़ देखें प्लैटफ़ॉर्म और पुष्टि करने की तकनीक के कॉम्बिनेशन के लिए.
मैं Authentication एम्युलेटर की मदद से क्या-क्या कर सकता हूँ?
Authentication एम्युलेटर, हाई-फ़िडेलिटी वाला लोकल एम्युलेटर उपलब्ध कराता है Firebase Authentication सेवाएं, जो Google Workspace की ज़्यादातर सुविधाएं देती हैं प्रोडक्शन Firebase Authentication. Apple प्लैटफ़ॉर्म के साथ जोड़ा जाता है, Android और वेब Firebase SDK टूल के साथ, एम्युलेटर की मदद से ये काम किए जा सकते हैं:
- ईमेल/पासवर्ड की जांच करने के लिए, एम्युलेट किए गए उपयोगकर्ता खाते बनाएं, उन्हें अपडेट करें, और मैनेज करें, फ़ोन नंबर/एसएमएस, एसएमएस, और तीसरे पक्ष की पहचान की पुष्टि की जा सकती है. जैसे- Google सेवा देने वाली कंपनी की पुष्टि
- एम्युलेट किए गए उपयोगकर्ताओं को देखना और उनमें बदलाव करना
- कस्टम टोकन ऑथेंटिकेशन सिस्टम का प्रोटोटाइप बनाना
- एम्युलेटर के यूज़र इंटरफ़ेस (यूआई) लॉग टैब में, पुष्टि करने से जुड़े मैसेज देखें.
कोई Firebase प्रोजेक्ट चुनें
Firebase Local Emulator Suite, किसी एक Firebase प्रोजेक्ट के लिए प्रॉडक्ट को एम्युलेट करता है.
सीएलआई रन में, एम्युलेटर शुरू करने से पहले, इस्तेमाल करने के लिए प्रोजेक्ट चुनने के लिए
firebase use
आपकी मौजूदा डायरेक्ट्री में मौजूद है. या फिर,
हर एम्युलेटर के लिए, --project
फ़्लैग
आदेश.
Local Emulator Suite, रीयल Firebase प्रोजेक्ट को एम्युलेट करने के साथ-साथ डेमो प्रोजेक्ट.
प्रोजेक्ट का टाइप | सुविधाएं | एम्युलेटर के साथ इस्तेमाल करें |
---|---|---|
रीयल |
असली Firebase प्रोजेक्ट वह होता है जिसे आपने बनाया और कॉन्फ़िगर किया है (सबसे ज़्यादा Firebase कंसोल के ज़रिए). असल प्रोजेक्ट में लाइव संसाधन होते हैं, जैसे कि डेटाबेस इंस्टेंस, स्टोरेज बकेट, फ़ंक्शन या उस Firebase के लिए सेट अप किया गया कोई भी अन्य संसाधन प्रोजेक्ट. |
रीयल Firebase प्रोजेक्ट के साथ काम करते समय, किसी भी इस्तेमाल किए जा सकने वाले सभी प्रॉडक्ट का इस्तेमाल किया जा सकता है. जिन प्रॉडक्ट को एम्युलेट नहीं किया जा रहा है उनके लिए, आपके ऐप्लिकेशन और कोड लाइव संसाधन (डेटाबेस इंस्टेंस, स्टोरेज) के साथ इंटरैक्ट करें बकेट, फ़ंक्शन वगैरह). |
डेमो |
डेमो Firebase प्रोजेक्ट में कोई वास्तविक Firebase कॉन्फ़िगरेशन नहीं होता और कोई लाइव संसाधन नहीं. इन प्रोजेक्ट को आम तौर पर कोडलैब से ऐक्सेस किया जाता है या अन्य ट्यूटोरियल. डेमो प्रोजेक्ट के प्रोजेक्ट आईडी में |
डेमो Firebase प्रोजेक्ट के साथ काम करते समय, आपके ऐप्लिकेशन और कोड सिर्फ़ एम्युलेटर. अगर आपका ऐप्लिकेशन किसी संसाधन का इस्तेमाल करता है जिसके लिए एम्युलेटर नहीं चल रहा है, तो वह कोड काम नहीं करेगा. |
हमारा सुझाव है कि जहां भी मुमकिन हो, डेमो प्रोजेक्ट का इस्तेमाल करें. सदस्यता के साथ यहां दिए गए फ़ायदे मिलते हैं:
- सेटअप करना आसान है. इसकी वजह यह है कि एम्युलेटर को चलाने के लिए, आपको कोई Firebase प्रोजेक्ट
- बेहतर सुरक्षा, क्योंकि अगर आपका कोड गलती से किसी ऐसे प्लैटफ़ॉर्म पर शुरू हो जाता है जो सिम्युलेट नहीं किया गया है (प्रोडक्शन) में उपलब्ध संसाधनों के लिए, डेटा को बदलने, इस्तेमाल, और बिलिंग की संभावना नहीं है
- बेहतर ऑफ़लाइन सहायता, क्योंकि देखने के लिए इंटरनेट ऐक्सेस करने की ज़रूरत नहीं होती अपने SDK टूल का कॉन्फ़िगरेशन डाउनलोड करें.
एम्युलेटर से बात करने के लिए, अपने ऐप्लिकेशन को इंस्टॉल करें
Android, iOS, और वेब SDK टूल
इन-ऐप्लिकेशन कॉन्फ़िगरेशन या टेस्ट क्लास सेट अप करें, ताकि Authentication एम्युलेटर इस तरह है.
Kotlin+KTX
Firebase.auth.useEmulator("10.0.2.2", 9099)
Java
FirebaseAuth.getInstance().useEmulator("10.0.2.2", 9099);
Swift
Auth.auth().useEmulator(withHost:"127.0.0.1", port:9099)
Web
import { getAuth, connectAuthEmulator } from "firebase/auth"; const auth = getAuth(); connectAuthEmulator(auth, "http://127.0.0.1:9099");
Web
const auth = firebase.auth(); auth.useEmulator("http://127.0.0.1:9099");
प्रोटोटाइप बनाने और इनके बीच इंटरैक्शन की जांच करने के लिए किसी अतिरिक्त सेटअप की ज़रूरत नहीं होती Cloud Firestore के लिए Authentication और Cloud Functions या Firebase Security Rules या Realtime Database. जब Authentication एम्युलेटर को कॉन्फ़िगर किया गया हो. साथ ही, अन्य एम्युलेटर को कॉन्फ़िगर किया गया हो तो वे अपने आप एक साथ काम करते हैं.
Admin SDK सेकंड
Firebase Admin SDK अपने-आप Authentication एम्युलेटर से कनेक्ट हो जाते हैं. ऐसा तब होता है, जब
FIREBASE_AUTH_EMULATOR_HOST
एनवायरमेंट वैरिएबल सेट किया गया.
export FIREBASE_AUTH_EMULATOR_HOST="127.0.0.1:9099"
ध्यान दें कि Cloud Functions एम्युलेटर को Authentication एम्युलेटर, ताकि आप बीच इंटिग्रेशन की जांच करते समय इस चरण को छोड़ सकें Cloud Functions और Authentication एम्युलेटर. एनवायरमेंट वैरिएबल ऐसा होगा Cloud Functions में Admin SDK के लिए अपने-आप सेट हो गया है.
एनवायरमेंट वैरिएबल सेट होने पर, Firebase Admin SDK बिना साइन वाले आईडी को स्वीकार करेगा
Authentication एम्युलेटर की ओर से जारी किए गए टोकन और सेशन कुकी (verifyIdToken
के ज़रिए)
और createSessionCookie
तरीके भी शामिल करें).
टेस्टिंग के मकसद से बनाया गया है. कृपया पक्का करें कि प्रोडक्शन में एनवायरमेंट वैरिएबल सेट नहीं किया जाए.
अगर आपको अपना Admin SDK कोड, किसी ऐसे एम्युलेटर से कनेक्ट करना है जो इसके साथ चल रहा है
किसी अन्य एनवायरमेंट के लिए, आपको वही प्रोजेक्ट आईडी बताना होगा जिसे आपने Firebase सीएलआई का इस्तेमाल करके सेट किया था. आपके पास initializeApp
को प्रोजेक्ट आईडी पास करने की सुविधा होती है
सीधे तौर पर सेट करें या GCLOUD_PROJECT
एनवायरमेंट वैरिएबल को सेट करें.
Node.js का एडमिन SDK
admin.initializeApp({ projectId: "your-project-id" });
एनवायरमेंट वैरिएबल
export GCLOUD_PROJECT="your-project-id"
आईडी टोकन
सुरक्षा वजहों से, Authentication एम्युलेटर, साइन नहीं किए गए आईडी टोकन जनरेट करता है. ये इन्हें सिर्फ़ दूसरे Firebase एम्युलेटर या Firebase एडमिन SDK टूल तब स्वीकार करते हैं, जब कॉन्फ़िगर किए गए. इन टोकन को प्रोडक्शन कंपनी ने अस्वीकार कर दिया जाएगा प्रोडक्शन मोड में चल रही Firebase सेवाएं या Firebase एडमिन SDK टूल (उदाहरण के लिए, डिफ़ॉल्ट व्यवहार).
एम्युलेटर शुरू करें
Emulator Suite UI के ज़रिए, Authentication एम्युलेटर का इस्तेमाल इंटरैक्टिव तरीके से किया जा सकता है वह भी अपने लोकल REST इंटरफ़ेस के ज़रिए, बिना किसी बातचीत के. नीचे दिए गए सेक्शन में, इस्तेमाल के इंटरैक्टिव और नॉन-इंटरैक्टिव इस्तेमाल के उदाहरण दिए गए हैं.
Authentication एम्युलेटर, उसका REST इंटरफ़ेस, और Emulator Suite UI, इसे लागू करें:
firebase emulators:start
एम्युलेट किया गया ईमेल, ईमेल लिंक, और पहचान छिपाकर पुष्टि करने की सुविधा
बिना पहचान की पुष्टि करने के लिए, आपका ऐप्लिकेशन आपके प्लैटफ़ॉर्म (iOS, Android, web).
ईमेल/पासवर्ड की पुष्टि करने के लिए, SDK टूल के Authentication तरीकों का इस्तेमाल करके, आपके ऐप्लिकेशन से Authentication एम्युलेटर पर अपने उपयोगकर्ता खातों से जोड़ा जा सकता है, ऐसा करने के लिए, Emulator Suite UI का इस्तेमाल करें.
- Emulator Suite UI में, पुष्टि करें टैब पर क्लिक करें.
- उपयोगकर्ता जोड़ें बटन पर क्लिक करें.
- ईमेल की पुष्टि करने वाला फ़ॉर्म भरकर, उपयोगकर्ता खाता बनाने वाले विज़र्ड पर जाएं फ़ील्ड.
अगर आपको टेस्ट उपयोगकर्ता बनाना है, तो ऐप्लिकेशन आपके प्लैटफ़ॉर्म के लिए SDK टूल लॉजिक का इस्तेमाल करके, उपयोगकर्ता को साइन इन और साइन आउट कर सकता है (iOS, Android, वेब).
ईमेल लिंक फ़्लो के साथ ईमेल की पुष्टि/साइन-इन की जांच करने के लिए, एम्युलेटर
यूआरएल को उस टर्मिनल में प्रिंट करता है जिस पर firebase emulators:start
चलाया गया था.
i To verify the email address customer@ex.com, follow this link:
http://127.0.0.1:9099/emulator/action?mode=verifyEmail&lang=en&oobCode=XYZ123&apiKey=fake-api-key
पुष्टि करने के इवेंट को सिम्युलेट करने के लिए, इस लिंक को अपने ब्राउज़र में चिपकाएं. इसके बाद, पुष्टि हो गई है या नहीं.
{
"authEmulator": {
"success": "The email has been successfully verified.",
"email": "customer@example.com"
}
}
पासवर्ड रीसेट करने की जांच करने के लिए, एम्युलेटर मिलता-जुलता यूआरएल प्रिंट करता है, जैसे कि newPassword पैरामीटर (जिसे ज़रूरत के मुताबिक बदला जा सकता है) को टर्मिनल में जोड़ा जा सकता है.
http://127.0.0.1:9099/emulator/action?mode=resetPassword&oobCode=XYZ!23&apiKey=fake-api-key&newPassword=YOUR_NEW_PASSWORD
नॉन-इंटरैक्टिव टेस्टिंग
ईमेल/पासवर्ड मैनेज करने के लिए, Emulator Suite UI या क्लाइंट कोड का इस्तेमाल करने के बजाय उपयोगकर्ता खाते हैं, तो आप ऐसी टेस्ट सेटअप स्क्रिप्ट लिख सकते हैं जिन्हें बनाने के लिए REST API को कॉल किया जाता है और उपयोगकर्ता खातों को मिटाएं और अपने-आप जानकारी भरने के लिए, आउट-ऑफ़-बैंड ईमेल पुष्टि कोड पाएं एम्युलेटर के लिए उपलब्ध ईमेल पते की पुष्टि करने वाला यूआरएल. यह प्लैटफ़ॉर्म और टेस्ट कोड को अलग-अलग रखता है की मदद से, बिना किसी इंटरैक्शन के टेस्ट किया जा सकता है.
नॉन-इंटरैक्टिव ईमेल और पासवर्ड की जांच करने के फ़्लो के लिए, आम तौर पर नीचे दिया गया तरीका अपनाएं.
- Authentication signUp REST एंडपॉइंट की मदद से उपयोगकर्ता बनाएं.
- जांच करने के लिए, उपयोगकर्ताओं के ईमेल और पासवर्ड का इस्तेमाल करके साइन इन करें.
- अगर आपकी जांच पर लागू होता है, तो आउट-ऑफ़-बैंड ईमेल पुष्टि को फ़ेच करें एम्युलेटर-खास REST एंडपॉइंट से कोड.
- डेटा मिटाने के लिए, उपयोगकर्ता के रिकॉर्ड को एम्युलेटर के लिए खास REST एंडपॉइंट से फ़्लश करें.
फ़ोन/एसएमएस की मदद से पुष्टि करने की सुविधा
फ़ोन की पुष्टि करने के लिए, पुष्टि करने वाला एम्युलेटर इन पर काम नहीं करता:
- reCAPTCHA और एपीएन फ़्लो. एम्युलेटर के साथ इंटरैक्ट करने के लिए कॉन्फ़िगर किए जाने के बाद, क्लाइंट SDK टूल, पुष्टि करने के इन तरीकों को बंद करने के लिए बताए गए तरीके का इस्तेमाल करते हैं इंटिग्रेशन टेस्टिंग (iOS, Android, वेब).
- Firebase कंसोल में, पहले से कॉन्फ़िगर किए गए कोड वाले फ़ोन नंबर की जांच करें.
नहीं तो, क्लाइंट कोड के हिसाब से फ़ोन/एसएमएस की पुष्टि करने का फ़्लो जो प्रोडक्शन ट्रैक (iOS) में दी गई जानकारी से मेल खाती हैं, Android, वेब).
Emulator Suite UI का इस्तेमाल करके:
- Emulator Suite UI में, पुष्टि करें टैब पर क्लिक करें.
- उपयोगकर्ता जोड़ें बटन पर क्लिक करें.
- फ़ोन की पुष्टि भरने के लिए, उपयोगकर्ता खाता बनाने वाले विज़र्ड पर जाएं फ़ील्ड.
हालांकि, फ़ोन की पुष्टि करने के फ़्लो के लिए, एम्युलेटर डिलीवरी को ट्रिगर नहीं करेगा
नहीं भेजा है, क्योंकि किसी कैरियर से संपर्क करना दायरे से बाहर है और
यह स्थानीय जांच के लिए सही है! इसके बजाय, एम्युलेटर उस कोड को प्रिंट करता है जो
एसएमएस के ज़रिए उसी टर्मिनल पर भेजे गए हों जिस पर आपने चलाया था
firebase emulators:start
; उपयोगकर्ताओं को सिम्युलेट करने के लिए, यह कोड ऐप्लिकेशन में डालें
अपने मैसेज देख रहा है.
नॉन-इंटरैक्टिव टेस्टिंग
फ़ोन की मदद से पुष्टि करने की सुविधा से जुड़ी नॉन-इंटरैक्टिव टेस्टिंग के लिए, Authentication एम्युलेटर का इस्तेमाल करें उपलब्ध एसएमएस कोड वापस पाने के लिए REST API. ध्यान दें कि कोड हर शुरू करते हैं.
सामान्य क्रम यहां दिया गया है.
- पुष्टि की प्रक्रिया शुरू करने के लिए, प्लैटफ़ॉर्म
signInWithPhoneNumber
पर कॉल करें. - एम्युलेटर के लिए खास REST एंडपॉइंट का इस्तेमाल करके, पुष्टि करने वाला कोड वापस पाएं.
- पुष्टि करने वाला कोड बताने के लिए, हमेशा की तरह
confirmationResult.confirm(code)
पर कॉल करें.
बहु-स्तरीय एसएमएस
Authentication एम्युलेटर, मैसेज (एसएमएस) की प्रोटोटाइपिंग और मल्टी-फ़ैक्टर की जांच के साथ काम करता है पुष्टि करने वाले फ़्लो, iOS के लिए प्रोडक्शन में उपलब्ध हैं, Android, और वेब.
एम्युलेटर में किसी मॉक उपयोगकर्ता को जोड़ने के बाद, MFA को चालू करके उसे कॉन्फ़िगर किया जा सकता है
या ज़्यादा फ़ोन नंबर, जिन पर दूसरे चरण के एसएमएस मैसेज भेजे जाएंगे. मैसेज देखें
आउटपुट उसी टर्मिनल पर जाता है जिस पर आपने firebase emulators:start
चलाया था,
और REST इंटरफ़ेस में उपलब्ध है.
तीसरे पक्ष के आइडेंटिटी प्रोवाइडर (आईडीपी) की पुष्टि करने के लिए इस्तेमाल किया गया तरीका
Authentication एम्युलेटर की मदद से, तीसरे पक्ष के पुष्टि करने के फ़्लो की जांच की जा सकती है अपने iOS, Android या वेब ऐप्लिकेशन के लिए प्रोडक्शन कोड में कोई बदलाव नहीं किया है. उदाहरण के लिए के दस्तावेज़ देखें, ताकि आपको सेवा देने वाली कंपनियों और प्लैटफ़ॉर्म का कॉम्बिनेशन, जिसे आप अपने ऐप्लिकेशन में इस्तेमाल कर सकते हैं.
आम तौर पर, अपने एपीआई लेवल की पुष्टि करने के लिए, Firebase SDK टूल का इस्तेमाल किया जा सकता है दो तरीकों से:
- आपका ऐप्लिकेशन, SDK टूल को पूरी प्रोसेस मैनेज करने देता है. इसमें ये भी शामिल हैं क्रेडेंशियल फिर से पाने के लिए, आईडीपी (IdP) की सेवा देने वाली तीसरे पक्ष की कंपनियों के साथ किए जाने वाले सभी इंटरैक्शन.
- आपका ऐप्लिकेशन, इसका इस्तेमाल करके तीसरे पक्ष की सेवा देने वाली कंपनी से मैन्युअल तौर पर क्रेडेंशियल हासिल करता है पक्ष का SDK टूल हटा देता है और उन क्रेडेंशियल को Authentication SDK टूल पर पास कर देता है.
दोबारा, ऊपर दिए गए दस्तावेज़ का लिंक देखें और पक्का करें कि आप इनमें से जो भी फ़्लो हो - Firebase SDK टूल से मैनेज किया जाने वाला बनाम मैन्युअल क्रेडेंशियल फिर से पाना - जो आपको चाहिए इस्तेमाल करें. Authentication एम्युलेटर की मदद से, दोनों में से किसी भी तरीके की जांच की जा सकती है.
Firebase SDK टूल से चलने वाले आईडीपी फ़्लो की जांच करना
अगर आपका ऐप्लिकेशन शुरू से आखिर तक किसी भी Firebase SDK टूल का इस्तेमाल करता है, जैसे कि OAuthProvider
Microsoft, GitHub या Yahoo के साथ साइन-इन करें, ताकि इंटरैक्टिव टेस्टिंग के लिए, Authentication का इस्तेमाल किया जा सके
एम्युलेटर आपकी मदद करने के लिए, इससे जुड़े साइन-इन पेज का लोकल वर्शन उपलब्ध कराता है
signinWithPopup
को कॉल करने वाले वेब ऐप्लिकेशन से या
signInWithRedirect
तरीका. यह स्थानीय तौर पर सेव किया जाने वाला साइन इन पेज भी यहां दिखता है
मोबाइल ऐप्लिकेशन, जिन्हें आपके प्लैटफ़ॉर्म की वेबव्यू लाइब्रेरी से रेंडर किया जाता है.
एम्युलेटर, ज़रूरत के हिसाब से तीसरे पक्ष के मॉक उपयोगकर्ता खाते और क्रेडेंशियल बनाता है का इस्तेमाल किया जा सकता है.
मैन्युअल तरीके से क्रेडेंशियल वापस पाने के साथ आईडीपी फ़्लो की जांच करना
अगर "मैन्युअल" का इस्तेमाल किया जाता है साइन-इन करने की तकनीकों का इस्तेमाल करें और अपने प्लैटफ़ॉर्म के signInWithCredentials
को कॉल करें
तरीका है, तो आपका ऐप्लिकेशन असल में तीसरे पक्ष से साइन-इन का अनुरोध करेगा और
तीसरे पक्ष के असली क्रेडेंशियल फिर से मिल सकते हैं.
ध्यान दें कि एम्युलेटर पर, सिर्फ़ signInWithCredential
की पुष्टि करने की सुविधा काम करती है
Google साइन-इन, Apple, और सेवा देने वाली अन्य कंपनियों से मिले क्रेडेंशियल के लिए
JSON वेब टोकन (JWT) के तौर पर लागू किए गए आईडी टोकन का इस्तेमाल किया जा सके. ऐक्सेस टोकन
(उदाहरण के लिए, Facebook या Twitter, जो JWT नहीं हैं)
समर्थित हैं. इन मामलों में, अगला सेक्शन एक विकल्प के बारे में है.
नॉन-इंटरैक्टिव टेस्टिंग
नॉन-इंटरैक्टिव टेस्टिंग का एक तरीका यह है कि साइन-इन पर उपयोगकर्ता के क्लिक अपने-आप हो जाएं एम्युलेटर के ज़रिए दिखाया जाने वाला पेज. वेब ऐप्लिकेशन के लिए, इस तरह के कंट्रोल इंटरफ़ेस का इस्तेमाल करें WebDriver. मोबाइल के लिए, अपने प्लैटफ़ॉर्म से यूज़र इंटरफ़ेस (यूआई) टेस्ट टूल का इस्तेमाल करें, जैसे कि Espresso या Xcode.
इसके अलावा, signInWithCredential
का इस्तेमाल करने के लिए, अपने कोड को अपडेट किया जा सकता है
(उदाहरण के लिए, कोड ब्रांच में) और मॉक के साथ टोकन की पुष्टि करने का फ़्लो इस्तेमाल करें
असली क्रेडेंशियल के बजाय खातों के लिए आईडी टोकन.
- अपने कोड के उस हिस्से को फिर से तार दें या टिप्पणी के तौर पर मार्क करें जिससे idTokens वापस आते हैं आईडीपी (IdP); इससे आपको अपने डिवाइस के दौरान वास्तविक उपयोगकर्ता नाम और पासवर्ड टेस्ट करता है. साथ ही, आईडीपी (IdP) पर एपीआई कोटा और रेट लिमिट से आपके टेस्ट में राहत देता है.
- दूसरा, टोकन के बजाय लिटरल JSON स्ट्रिंग का इस्तेमाल करें
signInWithCredential
. उदाहरण के तौर पर, वेब SDK टूल का इस्तेमाल करके, इसके लिए कोड:
firebase.auth().signInWithCredential(firebase.auth.GoogleAuthProvider.credential(
'{"sub": "abc123", "email": "foo@example.com", "email_verified": true}'
));
एम्युलेटर के साथ इस्तेमाल किए जाने पर, यह कोड उपयोगकर्ता की पुष्टि कर देगा
Google पर foo@example.com
ईमेल से. सब-फ़ील्ड को प्राथमिक कुंजी की तरह समझें,
जिसे अलग-अलग उपयोगकर्ताओं के साइन इन करने का मज़ाक़ करते हुए किसी भी स्ट्रिंग में बदला जा सकता है. आप
firebase.auth.GoogleAuthProvider
को इससे बदलें, उदाहरण के लिए,
new firebase.auth.OAuthProvider('yahoo.com')
या आपको सेवा देने वाली किसी अन्य कंपनी का आईडी
मॉक करने के लिए.
एम्युलेट किए गए कस्टम टोकन की पुष्टि करने की सुविधा
Authentication एम्युलेटर, JSON Web Tokens की मदद से पुष्टि करने का काम करता है
साथ काम करने वाले प्लैटफ़ॉर्म पर, signInWithCustomToken
तरीके का इस्तेमाल करने की सुविधा. इसकी जानकारी भी दी गई है
प्रोडक्शन Authentication के दस्तावेज़ में दिए गए हैं.
Authentication एम्युलेटर, प्रोडक्शन से किस तरह अलग है
Firebase Authentication एम्युलेटर, प्रोडक्शन की कई सुविधाओं को सिम्युलेट करता है प्रॉडक्ट. हालांकि, पुष्टि करने वाला किसी भी तरह का सिस्टम कई लेवल पर बहुत ज़्यादा सुरक्षा देता है (डिवाइस, तीसरे पक्ष की सेवा देने वाली कंपनियां, Firebase, वगैरह), तो एम्युलेटर के लिए सभी फ़्लो को ठीक से फिर से बनाना मुश्किल हो जाता है.
Cloud IAM
Firebase एम्युलेटर सुइट, किसी दौड़ने के लिए IAM से जुड़ा व्यवहार. एम्युलेटर, Firebase की सुरक्षा का पालन करता है नियम दिए गए हैं, लेकिन उन स्थितियों में जहां आम तौर पर IAM का इस्तेमाल किया जाता है, उदाहरण के लिए सेवा खाते और इस तरह अनुमतियों को शुरू करने वाले Cloud Functions को सेट करने के लिए, एम्युलेटर को कॉन्फ़िगर नहीं किया जा सकता और वह दुनिया भर में उपलब्ध खाते का इस्तेमाल, इस पर करेगा आपकी डेवलपर मशीन, ठीक उसी तरह काम करती है जैसे सीधे कोई स्थानीय स्क्रिप्ट चलाने के लिए की जाती है.
मोबाइल पर ईमेल लिंक से साइन-इन करना
मोबाइल प्लैटफ़ॉर्म पर, ईमेल लिंक में साइन इन करने के लिए Firebase डाइनैमिक लिंक का इस्तेमाल किया जाता है. ऐसे सभी लिंक (मोबाइल) वेब प्लैटफ़ॉर्म पर खोले जाएंगे.
तीसरे पक्ष की मदद से साइन-इन
तीसरे पक्ष के साइन-इन फ़्लो के लिए, Firebase Authentication सुरक्षित क्रेडेंशियल का इस्तेमाल करता है तीसरे पक्ष की सेवा देने वाली कंपनियां, जैसे कि Twitter और GitHub.
Google और Apple जैसे OpenID से जुड़ी कंपनियों के असली क्रेडेंशियल इसे Authentication एम्युलेटर ने स्वीकार किया. उन कंपनियों से मिले क्रेडेंशियल जो OpenID Connect से नहीं जुड़ी हैं समर्थित नहीं हैं.
ईमेल / एसएमएस से साइन इन
प्रोडक्शन ऐप्लिकेशन में, ईमेल और मैसेज (एसएमएस) के ज़रिए साइन-इन करने के दौरान, एसिंक्रोनस इस्तेमाल होता है एक कार्रवाई जिसमें उपयोगकर्ता, मिले मैसेज की जांच करता है और लॉगिन कोड डालता है अपने-आप जनरेट होता है. Authentication एम्युलेटर, कोई ईमेल या एसएमएस नहीं भेजता लेकिन जैसा कि ऊपर बताया गया है, यह लॉगिन कोड जनरेट करता है और उन्हें इस्तेमाल करने के लिए टर्मिनल पर आउटपुट करता है टेस्टिंग हो रही है.
एम्युलेटर के साथ टेस्ट फ़ोन नंबर तय करने की सुविधा काम नहीं करती लॉगिन कोड को ठीक करता है, जो Firebase कंसोल का इस्तेमाल करके किया जा सकता है.
कस्टम टोकन की पुष्टि करने की सुविधा
Authentication एम्युलेटर, हस्ताक्षर या समयसीमा खत्म होने की पुष्टि नहीं करता टोकन. इससे आपको हाथ से बने टोकन इस्तेमाल करने और टोकन को फिर से इस्तेमाल करने की सुविधा मिलती है में ज़रूरत के हिसाब से इस्तेमाल किया जा सकता है.
डेटा के गलत इस्तेमाल को रोकने / डेटा के गलत इस्तेमाल को रोकने की नीति
Authentication एम्युलेटर, प्रोडक्शन रेट को सीमित करने या गलत इस्तेमाल को रोकने की कोशिश नहीं करता सुविधाएँ.
ब्लॉक करने वाले फ़ंक्शन
प्रोडक्शन में, beforeCreate
के बाद उपयोगकर्ताओं को स्टोरेज में एक बार शामिल किया जाता है
और beforeSignIn
इवेंट ट्रिगर हुए. हालांकि, तकनीकी सीमाओं की वजह से,
Authentication एम्युलेटर, उपयोगकर्ता के बनाए जाने के बाद एक बार स्टोर करने के लिए लिखता है और
साइन-इन करने के बाद दूसरा ईमेल पता. इसका मतलब है कि नए उपयोगकर्ताओं के लिए, आपके पास कारोबार को
Authentication एम्युलेटर में, beforeSignIn
में getAuth().getUser()
, लेकिन आप यह कर पाएंगे
प्रोडक्शन में कोई गड़बड़ी हुई हो.
आगे क्या करना है?
वीडियो के चुने गए सेट और 'कैसे करें' निर्देशों के बारे में ज़्यादा जानने के लिए, Firebase एम्युलेटर की ट्रेनिंग से जुड़ी प्लेलिस्ट.
ट्रिगर किए गए फ़ंक्शन, आम तौर पर Authentication के साथ इंटिग्रेशन होते हैं. 'Firebase के लिए Cloud Functions' एम्युलेटर के बारे में ज़्यादा जानने के लिए, फ़ंक्शन स्थानीय तौर पर चलाएं पर जाएं.