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

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

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

नियम लिखना शुरू करने से पहले, इस्तेमाल किए जा रहे Firebase प्रॉडक्ट के लिए, Firebase के सुरक्षा नियमों वाली खास भाषा की समीक्षा करने के लिए कुछ समय निकालें. Cloud Storage, कॉमन एक्सप्रेशन लैंग्वेज (सीईएल) के सुपरसेट का इस्तेमाल करता है. यह ऐसे match और allow स्टेटमेंट पर निर्भर करता है जो तय पाथ पर ऐक्सेस के लिए एक शर्त सेट करता है.

Firebase के सुरक्षा नियमों की भाषा के मुख्य सिंटैक्स के बारे में जानने के बाद शुरू करें.

पुष्टि करने की सुविधा सेट अप करें

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

अपने ऐप्लिकेशन के लिए, पुष्टि करने की अतिरिक्त जानकारी भी सेट अप की जा सकती है.

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

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

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

उदाहरण के लिए, Cloud Storage में, हो सकता है कि आप एक ऐसा फ़ील्ड शामिल करना चाहें जो हर उपयोगकर्ता की खास भूमिका को दिखाता हो. इसके बाद, आपके नियम उस फ़ील्ड को पढ़ सकते हैं और उसका इस्तेमाल भूमिका-आधारित ऐक्सेस देने के लिए कर सकते हैं. आप Cloud Firestore डेटाबेस भी बना सकते हैं और Cloud Firestore दस्तावेज़ों में स्टोर ऐक्सेस करने की शर्तें लागू कर सकते हैं. इसके बाद, Cloud Storage के सुरक्षा नियमों से उन दस्तावेज़ों को ऐक्सेस कर सकते हैं.

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

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

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

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

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

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

जैसे-जैसे आप अपने ऐप्लिकेशन के लिए नियम बना रहे हैं और उन्हें समझ रहे हैं, इस्तेमाल के कुछ बुनियादी उदाहरणों के लिए 'नियम' लागू करने की कोशिश करें. इनमें ये मामले शामिल हैं:

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

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

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

नियम डिप्लॉय करें

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