पहचान और ऐक्सेस मैनेजमेंट (आईएएम) की मदद से, Firebase और Google के कुछ संसाधनों का ऐक्सेस दिया जा सकता है. साथ ही, अन्य संसाधनों का ऐक्सेस रोका जा सकता है. आईएएम की मदद से, कम से कम अधिकारों के सुरक्षा सिद्धांत को अपनाया जा सकता है. इससे, अपने संसाधनों का सिर्फ़ ज़रूरी ऐक्सेस दिया जा सकता है.
IAM के बारे में ज़्यादा जानकारी के लिए, Google Cloud IAM का दस्तावेज़ पढ़ें.
Firebase IAM की खास जानकारी
Firebase, IAM के अतिरिक्त विकल्प उपलब्ध कराता है. ये विकल्प, Firebase प्रोजेक्ट और आपके प्रोजेक्ट के सदस्यों के लिए खास तौर पर बनाए गए हैं.
जब पुष्टि किया गया कोई प्रोजेक्ट सदस्य Firebase में किसी कार्रवाई का अनुरोध करता है, तो IAM यह तय करता है कि प्रोजेक्ट सदस्य के पास संसाधन पर अनुरोध की गई कार्रवाई करने की अनुमति है या नहीं. प्रोजेक्ट के सदस्य को अनुरोध पूरा करने की अनुमति है या नहीं, यह इस बात पर निर्भर करता है कि उसे भूमिका कौनसी असाइन की गई है. हर भूमिका, अनुमतियों का एक कलेक्शन होती है. जब किसी प्रोजेक्ट सदस्य को कोई भूमिका असाइन की जाती है, तो उस प्रोजेक्ट सदस्य को उस भूमिका के लिए सभी अनुमतियां मिल जाती हैं.
प्रोजेक्ट के सदस्य
Firebase IAM का इस्तेमाल करके, अपने प्रोजेक्ट के सदस्यों को भूमिकाएं (और उनसे जुड़ी अनुमतियां) असाइन करें. प्रोजेक्ट के सदस्य इन टाइप के हो सकते हैं:
- Google खाता
- सेवा खाता
- Google ग्रुप
भूमिकाएं
आपके प्रोजेक्ट के सदस्यों को अनुमतियां, भूमिकाओं के ज़रिए दी जाती हैं. भूमिका, अनुमतियों का एक कलेक्शन होती है. किसी प्रोजेक्ट सदस्य को कोई भूमिका असाइन करने पर, उसे उस भूमिका से जुड़ी सभी अनुमतियां मिल जाती हैं.
Firebase IAM में, इन तरह की भूमिकाओं का इस्तेमाल किया जा सकता है:
बुनियादी भूमिकाएं: बुनियादी मालिक, एडिटर, और दर्शक की भूमिकाएं. इन्हें पहले "प्रिमिटिव" भूमिकाएं कहा जाता था.
पहले से तय की गई भूमिकाएं: Firebase के लिए खास तौर पर तैयार की गई भूमिकाएं. इनकी मदद से, बुनियादी भूमिकाओं की तुलना में ज़्यादा बेहतर तरीके से ऐक्सेस कंट्रोल किया जा सकता है. Firebase ये सुविधाएं देता है:
Firebase-लेवल की भूमिकाएं: ये ऐसी भूमिकाएं होती हैं जो Firebase के सभी प्रॉडक्ट के लिए, पढ़ने और लिखने का पूरा ऐक्सेस या सिर्फ़ पढ़ने का ऐक्सेस देती हैं.
प्रॉडक्ट कैटगरी की भूमिकाएं: ये ऐसी भूमिकाएं होती हैं जो प्रॉडक्ट के ग्रुप को पूरा पढ़ने/लिखने या सिर्फ़ पढ़ने का ऐक्सेस देती हैं. इन्हें Google Analytics और प्रॉडक्ट की सामान्य कैटगरी के हिसाब से व्यवस्थित किया जाता है.
प्रॉडक्ट-लेवल की भूमिकाएं: ये ऐसी भूमिकाएं होती हैं जिनसे चुनिंदा Firebase प्रॉडक्ट के लिए, पढ़ने/लिखने या सिर्फ़ पढ़ने का पूरा ऐक्सेस मिलता है.
कस्टम रोल: ये पूरी तरह से पसंद के मुताबिक बनाए गए रोल होते हैं. इन्हें अनुमतियों का ऐसा सेट बनाने के लिए बनाया जाता है जो आपके संगठन की खास ज़रूरतों को पूरा करता हो.
प्रोजेक्ट के सदस्यों और उनकी भूमिकाओं को मैनेज करना
प्रोजेक्ट के सदस्यों और उनकी भूमिकाओं को देखना
Firebase कंसोल में,- Firebase कंसोल में सिर्फ़ उन प्रोजेक्ट सदस्यों को दिखाया जाता है जिन्हें बुनियादी भूमिका (मालिक, एडिटर, व्यूअर) या Firebase की पहले से तय भूमिका असाइन की गई है. इस टैब में शामिल प्रोजेक्ट के सदस्यों के पास ही, Firebase कंसोल में Firebase प्रोजेक्ट को ऐक्सेस करने की अनुमति होती है.
- Firebase कंसोल में, प्रोजेक्ट के उन सदस्यों को नहीं दिखाया जाता जो सेवा खाते हैं. Google Cloud कंसोल में, IAM और एडमिन > IAM पेज पर जाकर, प्रोजेक्ट के इन सदस्यों को देखें.
प्रोजेक्ट के किसी सदस्य को भूमिका असाइन करना
प्रोजेक्ट के हर सदस्य को असाइन की गई भूमिकाओं को मैनेज करने के लिए, आपके पास Firebase प्रोजेक्ट का मालिक वाला ऐक्सेस होना चाहिए. इसके अलावा, आपको ऐसी भूमिका असाइन की गई हो जिसमें resourcemanager.projects.setIamPolicy की अनुमति हो.
यहां दी गई जगहों पर, भूमिकाएं असाइन और मैनेज की जा सकती हैं:
-
Firebase कंसोल में, प्रोजेक्ट के सदस्यों को भूमिकाएं असाइन करने का आसान तरीका उपलब्ध है. इसके लिए,
सेटिंग > उपयोगकर्ता और अनुमतियां टैब पर जाएं. आपके पास इनमें से कोई भी भूमिका असाइन करने का विकल्प होता है: बुनियादी भूमिकाएं (मालिक, एडिटर, व्यूअर), Firebase एडमिन/व्यूअर की भूमिकाएं या Firebase की पहले से तय की गई प्रॉडक्ट-कैटेगरी की भूमिकाएं. -
Google Cloud कंसोल में, IAM और एडमिन
IAM पेज पर जाकर, प्रोजेक्ट के सदस्यों को भूमिकाएं असाइन करने के लिए कई तरह के टूल उपलब्ध हैं.
आपके पास कस्टम भूमिकाएं बनाने और उन्हें मैनेज करने का विकल्प भी होता है. साथ ही, सेवा खातों को अपने प्रोजेक्ट का ऐक्सेस दिया जा सकता है.
ध्यान दें कि Google Cloud कंसोल में, प्रोजेक्ट के सदस्यों को प्रिंसिपल कहा जाता है.
अगर आपके प्रोजेक्ट का मालिक, अब मालिक की भूमिका वाली कार्रवाइयां नहीं कर सकता (उदाहरण के लिए, वह व्यक्ति आपकी कंपनी छोड़ चुका है) और आपके प्रोजेक्ट को Google Cloud संगठन के ज़रिए मैनेज नहीं किया जा रहा है (अगला पैराग्राफ़ देखें), तो Firebase सहायता टीम से संपर्क करें. साथ ही, उनसे Firebase प्रोजेक्ट का ऐक्सेस पाने का तरीका जानें.
ध्यान दें कि अगर कोई Firebase प्रोजेक्ट किसी Google Cloud संगठन का हिस्सा है, तो हो सकता है कि उसका कोई मालिक न हो. अगर आपको अपने Firebase प्रोजेक्ट के लिए मालिक नहीं मिल रहा है, तो उस व्यक्ति से संपर्क करें जो आपके Google Cloud संगठन को मैनेज करता है. उससे प्रोजेक्ट के लिए मालिक असाइन करने का अनुरोध करें.