फायरबेस दस्तावेज़ों में उदाहरण फायरबेस सुरक्षा नियमों के मैन्युअल अपडेट मानते हैं। असली दुनिया सहयोगी अनुप्रयोगों का समर्थन करने के लिए सुरक्षा नियमों को प्रोग्रामेटिक रूप से कैसे संशोधित किया जा सकता है? उपयोग के मामले में जिस पर मैं विचार कर रहा हूं, आवश्यकता है कि उपयोगकर्ता अन्य उपयोगकर्ताओं को चयनित डेटा को सहयोग/साझा करने और सहयोगियों तक पहुंच प्रदान करने में सक्षम होने के लिए आमंत्रित करने में सक्षम हो। यह फायरबेस के साथ कैसे पूरा किया जा सकता है?फ़ायरबेस में सुरक्षा नियमों को प्रोग्रामेटिक रूप से संशोधित करने के लिए कैसे?
उत्तर
आपको वास्तव में अपने सुरक्षा नियमों को प्रोग्रामेटिक रूप से परिवर्तित नहीं करना चाहिए। आपको उनके बारे में कोड के रूप में सोचना चाहिए और उन्हें केवल समय पर तैनात करने के लिए बदलना चाहिए।
यदि आप जो करने की कोशिश कर रहे हैं वह बदल गया है, तो वास्तव में उपयोगकर्ताओं को क्या करने की अनुमति है, आपको सुरक्षा नियमों को लिखकर ऐसा करना चाहिए जो आपके फायरबेस में डेटा पर निर्भर करते हैं।
उदाहरण के लिए, मान लें कि आप डेटा के एक टुकड़े तक केवल एक विशिष्ट समूह में उपयोगकर्ताओं तक पहुंच प्रतिबंधित करना चाहते हैं। समूह सदस्यता में हर बार सुरक्षा नियमों को संशोधित करने के बजाय, आप बस समूह को फायरबेस में संग्रहीत करेंगे और आपके सुरक्षा नियमों को जांचने के लिए जांच लेंगे कि मौजूदा उपयोगकर्ता उस समूह में पहुंच की अनुमति देने से पहले है या नहीं।
".read" : "root.child('groups').child($groupID).child(auth.userid).exists()"
इस तरह, कभी भी समूह सदस्यता बदलती है, उपयोगकर्ताओं को स्वचालित डेटा वे देखने के लिए अनुमति दी जानी चाहिए करने के लिए उपयोग प्रदान किया जाएगा।
सुरक्षा नियमों के एक और जटिल उदाहरण के लिए, Firefeed में नियम.जेसन फ़ाइल देखें।
लेकिन डायनामिक रूप से डेटासेट को कैसे जोड़ा जाएगा?
आप बच्चे $
नोड का उपयोग कर ऐसा करेंगे। यह इस तरह दिखता है:
यहाँ है मेरी डेटाबेस
users
- userIDHere
- name: John Doe
- whatever: who knows
और आप ऐसा करने से प्रत्येक उपयोगकर्ता पर नियम निर्धारित होगा:
{
"rules": {
"users": {
"$user": {
// whatever rules you want here, and you can reference $user to get the user's id.
}
}
}
}
आशा आप यही पूछ रहे थे है, और आशा इससे मदद मिलती है!
- 1. app.config में असेंबली बाइंडिंग को प्रोग्रामेटिक रूप से संशोधित करने के लिए कैसे करें?
- 2. प्रोग्रामेटिक रूप से डेटा टेम्पलेट को कैसे संशोधित करें?
- 3. मैं संशोधित अनुमतियों को प्रोग्रामेटिक रूप से कैसे जांचूं?
- 4. प्रोग्रामेटिक रूप से संशोधित पर्यावरण चर?
- 5. संशोधित स्थानीय सुरक्षा Powershell
- 6. प्रोग्रामेटिक रूप से csproj फ़ाइलों को संशोधित करें
- 7. संदेशबॉक्स को प्रोग्रामेटिक रूप से बंद करने के लिए बल
- 8. जेएसपी में यूआरएल को छिपाने/संशोधित करने के लिए कैसे?
- 9. क्लाउड फ़ंक्शंस के कुछ अनुरोधों को रूट करने के लिए फ़ायरबेस-होस्टिंग के अंदर पुनर्लेखन नियमों को कॉन्फ़िगर कैसे करें?
- 10. मैं फ्लाई पर iptables नियमों को प्रोग्रामेटिक रूप से प्रबंधित कैसे कर सकता हूं?
- 11. प्रोग्रामेटिक रूप से दृश्यों को देखने के लिए कैसे करें
- 12. मैं प्रोग्राम साझा करने के लिए प्रोग्रामेटिक रूप से
- 13. मौजूदा संसाधन फ़ाइल को प्रोग्रामेटिक रूप से
- 14. प्रोग्रामेटिक रूप से असेंबली बाध्यकारी
- 15. रूटिंग तालिका को प्रोग्रामेटिक रूप से संपादित करने के लिए कैसे करें
- 16. प्रोग्रामेटिक रूप से संदर्भ जोड़ने के लिए
- 17. रूबिक के घन को प्रोग्रामेटिक रूप से
- 18. PHP में दस्तावेज़ रूट को प्रोग्रामेटिक रूप से निर्धारित करने के लिए कैसे करें?
- 19. एंड्रॉइड कपकेक में जीपीएस को प्रोग्रामेटिक रूप से सक्षम करने के लिए कैसे करें
- 20. एक्सेल-वीबीए में 'अंडो' फ़ंक्शन को प्रोग्रामेटिक रूप से कोड करने के लिए कैसे करें?
- 21. Magento में किसी उपयोगकर्ता को प्रोग्रामेटिक रूप से पुष्टि करने के लिए कैसे करें?
- 22. लेआउट को प्रोग्रामेटिक रूप से बदलना (एनीमेशन के रूप में)
- 23. एनएलओजी प्रोग्रामेटिक रूप से
- 24. प्रोग्रामव्यू को प्रोग्रामेटिक रूप से
- 25. क्या फायरस्टोर सुरक्षा नियमों के लिए कोई सिम्युलेटर है?
- 26. प्रोग्रामेटिक रूप से माउस को
- 27. एनीमेशन के रूप में ऊंचाई लेआउट को बदलने के लिए कैसे करें (प्रोग्रामेटिक रूप से)
- 28. प्रगतिशील के रंग को प्रोग्रामेटिक रूप से
- 29. फ़ायरबेस सुरक्षा नियम/अनुमतियों को कैसे डिबग करें
- 30. फ़ायरबेस विश्लेषण डेटा को निर्यात करने के लिए कैसे करें
त्वरित उत्तर के लिए धन्यवाद। गतिशील रूप से अद्यतन उपयोगकर्ता को समझने के लिए समूहों का उपयोग करना समझ में आता है। लेकिन डायनामिक रूप से जोड़े गए डेटासेट को कैसे संभाला जाएगा? उदाहरण के लिए, कोई उपयोगकर्ता/उपयोगकर्ता/उपयोगकर्ता/परियोजनाओं/प्रोजेक्ट के तहत एक प्रोजेक्ट बना सकता है और फिर उस विशिष्ट प्रोजेक्ट के सहयोगियों के समूह को पढ़ने की पहुंच प्रदान करना चाहता है। फायरबेस के साथ यह कैसे पूरा किया जाएगा? – Jarnal
समूह सेटअप सिर्फ एक उदाहरण था। आपको समूह रखने की आवश्यकता नहीं है - आप इसे अपने इच्छित किसी भी डेटा पर निर्भर कर सकते हैं। उदाहरण के लिए डेटासेट में "पठनीय" ध्वज हो सकता है, यदि सही पर सेट किया गया है तो इसे किसी को पढ़ने की अनुमति मिलती है। या, इसका इस्तेमाल करने वाले उपयोगकर्ताओं की "पठनीय" सूची हो सकती है। आदि ... –
@AndrewLee, मेरे पास एक और जटिल मामला है: मैं गतिशील रूप से कमरे (शाखाएं) बना रहा हूं और मैं प्रत्येक कमरे को केवल एक्स विशिष्ट सहयोगियों तक सीमित करना चाहता हूं, और वहां सभी को लिखने से रोकना चाहता हूं। कमरे निर्माण पर इन अभिगम अधिकारों को मैं कैसे निर्दिष्ट कर सकता हूं? ध्यान दें कि लाखों अलग-अलग कमरे हो सकते हैं। –