2016-07-13 12 views
8

में साइनअप को अक्षम कैसे करें मैंने फ़ायरबेस.एथ()। SignInWithEmailAndPassword का उपयोग करके कुछ उपयोगकर्ताओं को बनाया है और अब साइनअप को रोकना चाहते हैं, लेकिन साइनइन काम करना जारी रखें। मैंने उपयोगकर्ताओं पर कुछ नियमों की कोशिश की और यहां तक ​​कि फायरबेस को लिखना बंद कर दिया। हालांकि पंजीकरण अभी भी संभव था। कंसोल के भीतर ईमेल/पासवर्ड को अक्षम करने से लॉगिन भी अक्षम हो जाता है।फ़ायरबेस 3.x

{ 
    "rules": { 
     ".read": true, 
     ".write": false, 
     } 
} 

कोई विचार फ़ायरबेस 3 में उपयोगकर्ताओं को सुरक्षा नियमों को कैसे लागू करें?

उत्तर

17

फ़ायरबेस स्पष्ट रूप से प्राधिकरण (ऐप से डेटाबेस या स्टोरेज संसाधनों तक पहुंच) से प्रमाणीकरण (ऐप में साइन इन) को अलग करता है।

आप सभी उपयोगकर्ताओं के लिए साइन-इन अक्षम किए बिना साइन-अप अक्षम नहीं कर सकते हैं, जो आप नहीं चाहते हैं।

एक विशिष्ट परिदृश्य में, डेवलपर प्रमाणीकृत उपयोगकर्ता के आधार पर डेटाबेस/फ़ाइल पहुंच सुरक्षित करना शुरू कर देगा। database security और storage security के लिए दस्तावेज़ों में प्रासंगिक अनुभाग देखें।

यदि आपका उपयोग-मामला यह है कि आप केवल विशिष्ट उपयोगकर्ताओं को एक्सेस करना चाहते हैं, तो आप शायद श्वेतसूची को लागू करना चाहते हैं: डेटा तक पहुंचने के लिए उपयोगकर्ताओं की एक सूची।

आपको लगता है कि आपकी सुरक्षा नियमों में कर सकते हैं:

{ 
    "rules": { 
     ".read": "auth.uid == '123abc' || auth.uid == 'def456'", 
     ".write": false, 
     } 
} 

या (बेहतर) अपने डेटाबेस में अपने सुरक्षा नियमों से अनुमति UIDs की सूची डालने और उस का हवाला देते हुए:

"allowedUids": { 
    "123abc": true, 
    "def456": true 
} 

और फिर:

{ 
    "rules": { 
     ".read": "root.child('allowedUids').child(auth.uid).exists()", 
     ".write": false, 
     } 
} 
+0

तेज प्रतिक्रिया के लिए धन्यवाद। यह मेरी समस्या हल करता है। – ZimZim

+0

यदि मेरा उत्तर उपयोगी था, तो इसके बाईं ओर स्थित ऊपर बटन क्लिक करें। अगर उसने आपके प्रश्न का उत्तर दिया है, तो इसे स्वीकार करने के लिए चेकमार्क पर क्लिक करें। इस तरह अन्य जानते हैं कि आप (पर्याप्त रूप से) मदद कर चुके हैं। –

+0

अच्छा कामकाज। फिर भी वे इस समारोह में जोड़ना चाहते हैं। यदि हमें 200 परीक्षक पसंद हैं तो उन्हें बड़ी गड़बड़ी होगी और उन्हें –