Firebase के सुरक्षा नियमों का इस्तेमाल शुरू करना

Firebase के सुरक्षा नियम, Cloud Firestore, Realtime Database, और Cloud Storage में आपके डेटा को पूरी तरह से कस्टमाइज़ की जा सकने वाली बेहतर सुरक्षा देते हैं. इस गाइड में दिए गए निर्देशों का पालन करके, Rules का इस्तेमाल करना आसान है. इससे, अपने डेटा को सुरक्षित रखने के साथ-साथ, अपने ऐप्लिकेशन को नुकसान पहुंचाने वाले उपयोगकर्ताओं से बचाया जा सकता है.

Firebase के सुरक्षा नियमों की भाषा को समझना

नियम लिखने से पहले, कुछ समय निकालकर उन Firebase प्रॉडक्ट के लिए Firebase के सुरक्षा नियमों की भाषा की समीक्षा करना ज़रूरी है जिनका इस्तेमाल किया जा रहा है. Realtime Database, अपने Rules के लिए JavaScript जैसे सिंटैक्स और JSON स्ट्रक्चर का इस्तेमाल करता है.

Firebase के सुरक्षा नियमों की भाषा का मुख्य सिंटैक्स सीखकर शुरुआत करें.

Authentication सेट अप करें

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

अपने ऐप्लिकेशन के लिए, पुष्टि करने से जुड़ी अतिरिक्त और पसंद के मुताबिक जानकारी सेट अप की जा सकती है.

Firebase के सुरक्षा नियमों और Firebase Authentication के बारे में ज़्यादा जानें.

अपने डेटा और नियमों के स्ट्रक्चर तय करना

सुरक्षा के लिए डेटा तय करना

डेटा को स्ट्रक्चर करने के तरीके से, नियमों को स्ट्रक्चर करने और लागू करने के तरीके पर असर पड़ सकता है. डेटा स्ट्रक्चर तय करते समय, इस बात का ध्यान रखें कि उनका आपके Rules स्ट्रक्चर पर क्या असर पड़ सकता है.

उदाहरण के लिए, हो सकता है कि आप Realtime Database में ऐसा फ़ील्ड शामिल करना चाहें जो हर उपयोगकर्ता की भूमिका के बारे में बताता हो. इसके बाद, आपके नियम उस फ़ील्ड को पढ़ सकते हैं और भूमिका के हिसाब से ऐक्सेस देने के लिए उसका इस्तेमाल कर सकते हैं.

डेटा और नियमों के आर्किटेक्चर तय करते समय, इस बात का ध्यान रखें कि आपके प्रॉडक्ट के हिसाब से, नियम कैसे कैस्केड करते हैं या नहीं करते. Realtime Database के साथ, नियम ऊपर से नीचे की ओर काम करते हैं. इसमें, कम प्राथमिकता वाले नियम, ज़्यादा प्राथमिकता वाले नियमों को बदल देते हैं. अगर कोई नियम किसी खास पाथ पर पढ़ने या लिखने की अनुमतियां देता है, तो वह उस पाथ के सभी चाइल्ड नोड का ऐक्सेस भी देता है. इसके उलट, Cloud Firestore और Cloud Storage के साथ, नियम सिर्फ़ डेटा हैरारकी के तय किए गए लेवल पर लागू होते हैं. साथ ही, अलग-अलग लेवल के ऐक्सेस को कंट्रोल करने के लिए, साफ़ तौर पर नियम लिखे जाते हैं.

अपने नियमों को ऐक्सेस करना

अपना मौजूदा Rules देखने के लिए, Firebase सीएलआई या Firebase कंसोल का इस्तेमाल करें. पक्का करें कि आपने नियमों में बदलाव करने के लिए, एक ही तरीके का इस्तेमाल किया हो. ऐसा करने से, अपडेट को गलती से ओवरराइट होने से बचाया जा सकता है. अगर आपको यह पक्का नहीं है कि स्थानीय तौर पर तय किए गए नियमों में सबसे नए अपडेट शामिल हैं या नहीं, तो Firebase कंसोल हमेशा आपके Firebase सुरक्षा नियमों का सबसे हाल ही में डिप्लॉय किया गया वर्शन दिखाता है.

Firebase कंसोल से अपने नियम ऐक्सेस करने के लिए, अपना प्रोजेक्ट चुनें. इसके बाद, बाईं ओर मौजूद नेविगेशन पैनल में, रीयल टाइम डेटाबेस पर क्लिक करें. सही डेटाबेस या स्टोरेज बकेट में जाने के बाद, Rules पर क्लिक करें.

Firebase सीएलआई से अपने नियमों को ऐक्सेस करने के लिए, firebase.json फ़ाइल में बताई गई नियम फ़ाइल पर जाएं.

बुनियादी नियम लिखना

ऐप्लिकेशन डेवलप करने और Rules को समझने के दौरान, Rules को लागू करने की कोशिश करें. इससे, इस्तेमाल के कुछ बुनियादी उदाहरणों को हल करने में मदद मिलेगी. इनमें ये शामिल हैं:

  • सिर्फ़ कॉन्टेंट के मालिक के लिए: उपयोगकर्ता के लिए कॉन्टेंट के ऐक्सेस पर पाबंदी लगाएं.
  • मिश्रित ऐक्सेस: उपयोगकर्ता के लिए, लिखने का ऐक्सेस सीमित करें, लेकिन सार्वजनिक तौर पर पढ़ने का ऐक्सेस दें.
  • एट्रिब्यूट के आधार पर ऐक्सेस: किसी ग्रुप या उपयोगकर्ता टाइप के लिए ऐक्सेस को सीमित करें.

अपने नियमों की जांच करना

अगर Firebase कंसोल में Firebase के सुरक्षा नियम सेट अप किए जा रहे हैं, तो Firebase के नियमों के प्लेलैंड का इस्तेमाल करके, व्यवहार की पुष्टि तुरंत की जा सकती है. हालांकि, हमारा सुझाव है कि प्रोडक्शन में बदलावों को डिप्लॉय करने से पहले, Local Emulator Suite की मदद से ज़्यादा अच्छी तरह से जांच करें.

नियम डिप्लॉय करना

अपने नियमों को प्रोडक्शन में डिप्लॉय करने के लिए, Firebase कंसोल या Firebase सीएलआई का इस्तेमाल करें. Firebase के सुरक्षा नियमों को मैनेज और डिप्लॉय करना में दिया गया तरीका अपनाएं.