इस पेज पर, Firebase प्रोजेक्ट सेट अप करने और किसी प्रोजेक्ट में अपने ऐप्लिकेशन रजिस्टर करने के सबसे सही तरीके बताए गए हैं. इससे आपको डेवलपमेंट वर्कफ़्लो के बारे में साफ़ तौर पर पता चलेगा. साथ ही, अलग-अलग एनवायरमेंट का इस्तेमाल करने के बारे में भी जानकारी मिलेगी. इस पेज पर दिए गए सबसे सही तरीकों के बारे में जानने के बाद, सुरक्षा से जुड़े हमारे सामान्य दिशा-निर्देश देखें.
Firebase प्रोजेक्ट के क्रम के बारे में जानकारी
इस डायग्राम में, Firebase प्रोजेक्ट की बुनियादी हैरारकी दिखाई गई है. यहां मुख्य संबंध दिए गए हैं:
Firebase प्रोजेक्ट, आपके सभी ऐप्लिकेशन और प्रोजेक्ट के लिए उपलब्ध कराए गए किसी भी संसाधन और सेवाओं के लिए एक कंटेनर की तरह होता है.
किसी Firebase प्रोजेक्ट में एक या उससे ज़्यादा Firebase ऐप्लिकेशन रजिस्टर किए जा सकते हैं. उदाहरण के लिए, किसी ऐप्लिकेशन के iOS और Android, दोनों वर्शन या किसी ऐप्लिकेशन के मुफ़्त और पैसे चुकाकर इस्तेमाल किए जाने वाले, दोनों वर्शन.
एक ही Firebase प्रोजेक्ट में रजिस्टर किए गए सभी Firebase ऐप्लिकेशन, प्रोजेक्ट के लिए उपलब्ध कराए गए सभी संसाधनों और सेवाओं को शेयर करते हैं और उनका ऐक्सेस रखते हैं. यहां कुछ उदाहरण दिए गए हैं:
एक ही Firebase प्रोजेक्ट में रजिस्टर किए गए सभी Firebase ऐप्लिकेशन, एक ही बैकएंड शेयर करते हैं. जैसे, Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage, और Cloud Functions.
एक ही Firebase प्रोजेक्ट में रजिस्टर किए गए सभी Firebase ऐप्लिकेशन, एक ही Google Analytics प्रॉपर्टी से जुड़े होते हैं. इस प्रॉपर्टी में, हर Firebase ऐप्लिकेशन एक अलग डेटा स्ट्रीम होता है.
इस क्रम में, Google Cloud प्रोजेक्ट कहां आता है?
ऊपर दिए गए डायग्राम में, Firebase प्रोजेक्ट के क्रम से जुड़ी एक ऐसी जानकारी नहीं दी गई है जो Google Cloud प्रोजेक्ट से जुड़ी है. Firebase प्रोजेक्ट, असल में सिर्फ़ एक Google Cloud प्रोजेक्ट होता है. इसमें Firebase से जुड़ी अतिरिक्त सुविधाएं और कॉन्फ़िगरेशन चालू होते हैं. ध्यान दें कि एक ही Firebase प्रोजेक्ट में रजिस्टर किए गए सभी ऐप्लिकेशन, एक-दूसरे के साथ Google Cloud संसाधनों और सेवाओं को शेयर करते हैं. साथ ही, उनके पास इन सभी का ऐक्सेस भी होता है.
Firebase प्रोजेक्ट के बारे में जानकारी में, Firebase और Google Cloud के बीच के संबंध के बारे में ज़्यादा जानें
ऐप्लिकेशन के वैरिएंट को Firebase प्रोजेक्ट के साथ रजिस्टर करना
अपने ऐप्लिकेशन के वैरिएंट को Firebase प्रोजेक्ट में रजिस्टर करने के लिए, यहां कुछ अहम सलाह दी गई हैं:
पक्का करें कि किसी Firebase प्रोजेक्ट में रजिस्टर किए गए सभी ऐप्लिकेशन, एक ही ऐप्लिकेशन के प्लैटफ़ॉर्म वैरिएंट हों. एक ही ऐप्लिकेशन या गेम के iOS, Android, और वेब वर्शन को एक ही Firebase प्रोजेक्ट में रजिस्टर करें.
अगर आपके पास एक से ज़्यादा बिल्ड वैरिएंट हैं जो एक ही Firebase संसाधन शेयर कर सकते हैं, तो वैरिएंट को उसी Firebase प्रोजेक्ट के साथ रजिस्टर करें. उदाहरण के लिए, एक ही प्रोजेक्ट में कोई ब्लॉग और वेब ऐप्लिकेशन या एक ही प्रोजेक्ट में किसी ऐप्लिकेशन के मुफ़्त और पैसे चुकाकर इस्तेमाल किए जाने वाले वर्शन.
अगर आपके पास रिलीज़ स्टेटस के आधार पर कई बिल्ड वैरिएंट हैं (ऊपर दिए गए उदाहरण की तरह, सामान्य उपयोगकर्ता की गतिविधि या ऐक्सेस के आधार पर नहीं), तो हर वैरिएंट को अलग Firebase प्रोजेक्ट में रजिस्टर करें. उदाहरण के लिए, डीबग वर्सेस रिलीज़ बिल्ड – इन दोनों बिल्ड को अपने-अपने Firebase प्रोजेक्ट में रजिस्टर करें.
रिलीज़ स्टेटस के आधार पर बनाई गई बिल्ड को एक ही Firebase संसाधन शेयर नहीं करने चाहिए. ऐसा इसलिए, क्योंकि इससे आपके डीबग डेटा के खराब होने या आपके प्रॉडक्ट डेटा को बदलने का खतरा होता है.
इन सभी बिल्ड वैरिएंट के प्लैटफ़ॉर्म-वैरिएंट, एक ही Firebase प्रोजेक्ट में होने चाहिए. उदाहरण के लिए, iOS और Android, दोनों के लिए डीबग बिल्ड को "dev" Firebase प्रोजेक्ट में रजिस्टर करें. ऐसा इसलिए, क्योंकि दोनों एक ही नॉन-प्रोडक्शन डेटा और संसाधनों के साथ इंटरैक्ट कर सकते हैं.
एक से ज़्यादा किरायेदार वाले सिस्टम से बचना
मल्टी-टेनेंसी की वजह से, कॉन्फ़िगरेशन और डेटा की निजता से जुड़ी गंभीर समस्याएं हो सकती हैं. जैसे, ऐनलिटिक्स एग्रीगेशन, शेयर किए गए पुष्टि करने के तरीके, बहुत ज़्यादा जटिल डेटाबेस स्ट्रक्चर, और सुरक्षा से जुड़े नियमों को लागू करने में समस्याएं.
आम तौर पर, अगर ऐप्लिकेशन का कोई सेट एक ही डेटा और कॉन्फ़िगरेशन शेयर नहीं करता है, तो हर ऐप्लिकेशन को अलग-अलग Firebase प्रोजेक्ट में रजिस्टर करने पर विचार करें.
उदाहरण के लिए, अगर आपने कोई वाइट-लेबल ऐप्लिकेशन बनाया है, तो हर इंडिपेंडेंट लेबल वाले ऐप्लिकेशन का अपना Firebase प्रोजेक्ट होना चाहिए. साथ ही, उस लेबल के iOS और Android वर्शन, एक ही Firebase प्रोजेक्ट में होने चाहिए. निजता की वजहों से, अलग-अलग लेबल वाले हर ऐप्लिकेशन को दूसरे ऐप्लिकेशन के साथ डेटा शेयर नहीं करना चाहिए.
अगले चरण
अलग-अलग एनवायरमेंट के लिए, सुरक्षा से जुड़े सामान्य दिशा-निर्देश पढ़ें. आपको यह पक्का करना है कि हर एनवायरमेंट और उसका डेटा सुरक्षित हो.
Firebase लॉन्च चेकलिस्ट देखें.