आपकी टिप्पणी से आप उल्लेख करते हैं कि आप mViewer का उपयोग कर रहे हैं। mViewer का संस्करण 0.9.1 प्रमाणीकरण का समर्थन नहीं करता है। इस मुद्दे के अनुसार mViewer GitHub पर, इसे संस्करण 0.9.2 में हल किया गया है, जिसे अक्टूबर में रिलीज़ करने के लिए लक्षित किया गया था।
प्रमाणीकरण के साथ नोड शुरू करने से पहले, नोड पर लॉग ऑन करें और एक उपयोगकर्ता जोड़ें। फिर नोड को --auth
. से शुरू करें और mViewer के बिना शेल से कनेक्ट करें।
इस बिंदु पर आप व्यवस्थापक डेटाबेस से जुड़ सकते हैं और अपने व्यवस्थापक उपयोगकर्ता को प्रमाणित कर सकते हैं:
use admin
db.auth('root', 'root')
चूंकि आपने एक व्यवस्थापक उपयोगकर्ता सेट किया है, जिसके पास सभी डेटाबेस तक पहुंच होगी, आपको व्यवस्थापक डेटाबेस के विरुद्ध प्रमाणित करने की आवश्यकता है। एक बार ऐसा करने के बाद आपके पास सभी डेटाबेस तक पहुंच होगी। आप किसी भी डेटाबेस पर नए उपयोगकर्ता बनाने में सक्षम होंगे, या सभी डेटाबेस के लिए नए केवल पढ़ने वाले उपयोगकर्ता बना सकेंगे।
यदि आप एक नया उपयोगकर्ता बनाते हैं जिसके पास केवल एक डेटाबेस तक पहुंच है, तो उस उपयोगकर्ता को use
. करने की आवश्यकता होगी वह डेटाबेस और db.auth(name, pass)
इसके खिलाफ।
यदि आप एक नया उपयोगकर्ता बनाते हैं जिसके पास सभी डेटाबेस तक केवल पढ़ने की पहुंच है, तो वे use admin
और फिर db.auth(name, pass)
सभी डेटाबेस तक उनकी रीड ओनली पहुंच प्राप्त करने के लिए
आप प्रमाणीकरण सेट करने के बारे में अधिक जानकारी प्राप्त कर सकते हैं यहां और उपयोगकर्ताओं को सेट करने के बारे में अधिक जानकारी यहां ए>
नोट:जब आप एक नोड बिना शुरू करते हैं --auth
तो कोई प्रमाणीकरण सक्षम नहीं है। इसका मतलब है कि आप शेल से जुड़ सकते हैं और db.auth('root','root')
लेकिन जहां तक पहुंच का संबंध है, यह कुछ नहीं करेगा। MongoDB --auth
. के बिना डेटाबेस तक पहुंच से इनकार नहीं करेगा कमांड लाइन विकल्प (--keyFile
शार्प सेटअप या रेप्लिका सेट में)