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

मोंगोडीबी इंजेक्शन

समर्थित ड्राइवरों में से एक का उपयोग करें। स्ट्रिंग्स को JSON के रूप में डिसेरिएलाइज़ न करें और उन्हें प्रश्नों के रूप में पास करें, उदा। ऐसा मत करो (रूबी में):

collection.send(query_type, JSON.parse(parameters))

जहां query_type और parameters एक रूप से आने वाले तार हैं। हालांकि ऐसा करने के लिए आपको आपराधिक रूप से मूर्ख बनना होगा।

चूंकि कोई क्वेरी भाषा नहीं है, इसलिए इंजेक्शन के लिए एक ही जगह नहीं है। SQL इंजेक्शन के हमले संभव होने का एक कारण यह है कि कार्रवाई की जानी चाहिए (SELECT , UPDATE , DELETE , आदि) क्वेरी स्ट्रिंग का हिस्सा है। MongoDB, और कई अन्य नए डेटाबेस, उस तरह काम नहीं करते हैं, इसके बजाय कार्रवाई एपीआई का एक हिस्सा है। जहां SQL ड्राइवरों के पास केवल query होता है और कुछ मामलों में exec , MongoDB में find . है , UPDATE , insert और remove



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. विरल का उपयोग करना:सच अभी भी MongoError हो रहा है:E11000 डुप्लिकेट कुंजी त्रुटि

  2. नेवला उदाहरण विधि अपरिभाषित है

  3. 2dsphere अनुक्रमित फ़ील्ड पर नेवला के पास (...) क्वेरी मान्य परिणाम नहीं लौटा रही है

  4. क्या फ़ील्ड के प्रकार को प्रोजेक्ट करने का कोई तरीका है

  5. नेवला में स्थान, mongoDB