Catch up on everthing we announced at this year's Firebase Summit. Learn more

क्लाउड स्टोरेज के लिए फायरबेस सुरक्षा नियमों को समझें

परंपरागत रूप से, सुरक्षा ऐप विकास के सबसे जटिल भागों में से एक रही है। अधिकांश अनुप्रयोगों में, डेवलपर्स को एक सर्वर बनाना और चलाना चाहिए जो प्रमाणीकरण (एक उपयोगकर्ता कौन है) और प्राधिकरण (एक उपयोगकर्ता क्या कर सकता है) को संभालता है। प्रमाणीकरण और प्राधिकरण स्थापित करना कठिन है, सही होना कठिन है, और आपके उत्पाद की सफलता के लिए महत्वपूर्ण है।

जिस तरह से फायरबेस प्रमाणीकरण आपके लिए अपने उपयोगकर्ताओं को प्रमाणित करना आसान बनाता है, उसी तरह क्लाउड स्टोरेज के लिए फायरबेस सुरक्षा नियम आपके लिए उपयोगकर्ताओं को अधिकृत करना और अनुरोधों को मान्य करना आसान बनाता है। क्लाउड स्टोरेज सुरक्षा नियम आपको पथ आधारित अनुमतियां निर्दिष्ट करने की अनुमति देकर आपके लिए जटिलता का प्रबंधन करते हैं। कोड की कुछ ही पंक्तियों में, आप प्राधिकरण नियम लिख सकते हैं जो किसी निश्चित उपयोगकर्ता के लिए क्लाउड स्टोरेज अनुरोधों को प्रतिबंधित करते हैं या अपलोड के आकार को सीमित करते हैं।

Firebase रीयलटाइम डाटाबेस एक समान सुविधा, कहा जाता है Firebase रीयलटाइम डाटाबेस नियम

प्रमाणीकरण

यह जानना कि आपके उपयोगकर्ता कौन हैं, एप्लिकेशन बनाने का एक महत्वपूर्ण हिस्सा है, और फायरबेस प्रमाणीकरण प्रमाणीकरण के लिए उपयोग में आसान, सुरक्षित, क्लाइंट साइड ओनली समाधान प्रदान करता है। क्लाउड स्टोरेज के लिए फायरबेस सुरक्षा नियम उपयोगकर्ता आधारित सुरक्षा के लिए फायरबेस प्रमाणीकरण से जुड़ते हैं। एक उपयोगकर्ता Firebase प्रमाणीकरण, साथ प्रमाणीकृत किया जाता है request.auth क्लाउड संग्रहण सुरक्षा नियमों में चर एक उद्देश्य यह है कि उपयोगकर्ता के अनन्य ID (शामिल हो जाता है request.auth.uid ) और टोकन (सभी अन्य उपयोगकर्ता जानकारी request.auth.token ) . उपयोगकर्ता प्रमाणीकृत नहीं किया जाता है, request.auth है null । यह आपको प्रति-उपयोगकर्ता के आधार पर डेटा एक्सेस को सुरक्षित रूप से नियंत्रित करने की अनुमति देता है। आप में अधिक जान सकते हैं प्रमाणीकरण अनुभाग।

प्राधिकार

अपने उपयोगकर्ता की पहचान करना सुरक्षा का केवल एक हिस्सा है। एक बार जब आप जान जाते हैं कि वे कौन हैं, तो आपको क्लाउड स्टोरेज में फ़ाइलों तक उनकी पहुंच को नियंत्रित करने का एक तरीका चाहिए।

क्लाउड स्टोरेज आपको प्रति फ़ाइल और प्रति पथ प्राधिकरण नियम निर्दिष्ट करने देता है जो हमारे सर्वर पर रहते हैं और आपके ऐप में फ़ाइलों तक पहुंच निर्धारित करते हैं। उदाहरण के लिए, डिफ़ॉल्ट क्लाउड संग्रहण सुरक्षा नियम किसी भी प्रदर्शन करने में Firebase प्रमाणीकरण की आवश्यकता होती है read या write सभी फाइलों पर कार्रवाई:

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;
    }
  }
}

आप में एक Firebase एप्लिकेशन का चयन करके इन नियमों को संपादित कर सकते Firebase कंसोल और देखने के Rules संग्रहण अनुभाग के टैब।

डेटा मान्य

क्लाउड संग्रहण के लिए Firebase सुरक्षा नियम भी डेटा सत्यापन के लिए इस्तेमाल किया जा सकता, फ़ाइल नाम और पथ के साथ-साथ के रूप में ऐसी फ़ाइल मेटाडाटा गुण मान्य सहित contentType और size

service firebase.storage {
  match /b/{bucket}/o {
    match /images/{imageId} {
      // Only allow uploads of any image file that's less than 5MB
      allow write: if request.resource.size < 5 * 1024 * 1024
                   && request.resource.contentType.matches('image/.*');
    }
  }
}

अगला कदम