MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

कैसे पता करें कि शेल स्क्रिप्ट में मोंगोडब ऑथ मोड में चल रहा है या नहीं?

यदि आप केवल परीक्षण करना चाहते हैं कि क्या आप bash . के माध्यम से प्रमाणीकरण के बिना MongoDB सर्वर से जुड़ सकते हैं या नहीं , आप निम्न के समान स्क्रिप्ट का उपयोग कर सकते हैं:

#!/bin/bash

# Connect to MongoDB address (host:port/dbname) specified as first parameter
# If no address specified, `mongo` default will be localhost:27017/test
isAuth=`mongo --eval "db.getUsers()" $1 | grep "not auth"`

if [ -z "$isAuth" ] ;
then
   echo "mongod auth is NOT enabled"
   exit 1
else
   echo "mongod auth is ENABLED"
   exit 0
fi

उदाहरण आउटपुट:

$ ./isAuthEnabled.sh localhost:27017
mongod auth is ENABLED

$ ./isAuthEnabled.sh localhost:27777
mongod auth is NOT enabled

इस स्क्रिप्ट के लिए एकमात्र पैरामीटर कनेक्ट करने के लिए एक वैकल्पिक MongoDB पता है (होस्ट:पोर्ट/डीबीनाम); mongo localhost:27017/test का उपयोग करने के लिए शेल डिफ़ॉल्ट ।

उपयोगकर्ताओं को अनुमति के बिना सूचीबद्ध किया जा सकता है या नहीं, इस पर स्क्रिप्ट एक साधारण जांच करती है।

यदि प्रमाणीकरण ठीक से सक्षम है, तो db.getUsers() कमांड को एक त्रुटि वापस करनी चाहिए जैसे:

  "Error: not authorized on test to execute command { usersInfo: 1.0 }"

नोट:लोकलहोस्ट अपवाद

डिफ़ॉल्ट रूप से (जैसे कि MongoDB 3.0 पर) एक localhost exception जो आपको पहला उपयोगकर्ता व्यवस्थापक बनाने की अनुमति देता है localhost . के माध्यम से कनेक्ट करके परिनियोजन के लिए . एक बार कम से कम एक उपयोगकर्ता जोड़े जाने के बाद, लोकलहोस्ट अपवाद स्वचालित रूप से अक्षम हो जाता है।

यदि आप अपने परिनियोजन की पूर्ण सुरक्षा की जाँच करना चाहते हैं, तो यह निश्चित रूप से MongoDB की समीक्षा करने लायक है। सुरक्षा जांचसूची




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. जावा स्पार्क स्पार्कसेशन को कैसे कॉन्फ़िगर करें नमूना आकार

  2. जब मोंगोडब का लाभ यह माना जाता है कि यह स्कीमा-कम है, तो नेवला स्कीमा का उपयोग क्यों करता है?

  3. अनजाने मोंगो संस्करण के उन्नयन के बाद पुराने मोंगो डेटाबेस का उन्नयन

  4. कैसे उपयोगकर्ता नाम और पासवर्ड के साथ जावा में MongoDB 3.2 से कनेक्ट करने के लिए?

  5. MongoConnectionException - से कनेक्ट करने में विफल:लोकलहोस्ट:27017