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

MongoDB और अन्य NoSQL DB में PII मास्किंग के माध्यम से…

संपादक नोट:यह उदाहरण हमारे जल्द से जल्द, कम से कम प्रत्यक्ष . को दर्शाता है (हालांकि अभी भी उपलब्ध है) MongoDB तालिकाओं में पाए गए डेटा की सुरक्षा के लिए IRI फ़ील्डशील्ड का उपयोग करने की विधि। जैसा कि आप पढ़ेंगे, MongoDB निर्यात उपयोगिता इस मामले में डेटा निकालती है और एक CSV फ़ाइल बनाती है जो नए सुरक्षित डेटा को MongoDB में वापस लोड करने से पहले फ़ील्डशील्ड को बाहरी रूप से मास्क करती है। आप अन्य NoSQL डेटाबेस जैसे Cassandra और ElasticSearch में डेटा के लिए इसी दृष्टिकोण का उपयोग कर सकते हैं।

IRI, MongoDB संग्रह और IRI डेटा मास्किंग इंजन जैसे FieldShield या Voracity के बीच डेटा स्थानांतरित करने के लिए अधिक प्रत्यक्ष तरीके भी प्रदान करता है। 2016 से ODBC के माध्यम से संरचित MongoDB डेटा के प्रत्यक्ष डेटा मास्किंग पर एक कैसे-से-लेख यहां है , और 2018 में CoSort v10 (फ़ील्डशील्ड और वोरासिटी को सशक्त करना) में समर्थित MongoDB के मूल ड्राइवर के माध्यम से यहां है। नवीनतम (चौथी विधि) विधि — जो IRI DarkShield का उपयोग करके संरचित और असंरचित दोनों MongoDB संग्रहों में PII को ढूंढ और छुपा सकती है — GUI में 2019 . से है यहां, और एपीआई में 2011 . से यहाँ है।

MongoDB एक शक्तिशाली NoSQL डेटाबेस है जो संग्रह नामक पैकेट में बड़ी मात्रा में डेटा संग्रहीत कर सकता है (रिलेशनल डेटाबेस में तालिकाओं के समान)। हालांकि यह क्षैतिज रूप से मापता है (मशीनों को जोड़कर डेटाबेस में शक्ति जोड़ें), प्रत्येक रिकॉर्ड को मैन्युअल रूप से अपडेट करने के अलावा, MongoDB के पास डेटा दर्ज करने के बाद उसे छिपाने का कोई आंतरिक तरीका नहीं है।

नीचे दिया गया उदाहरण बाहरी रूप से MongoDB मानों की सुरक्षा करता है। मैं समझाता हूं कि किसी संग्रह को CSV फ़ाइल में कैसे निर्यात करें, उस फ़ाइल में फ़ील्ड को मास्क करने के लिए IRI फ़ील्डशील्ड का उपयोग करें, और उस फ़ाइल को वापस Mongo में आयात करें ताकि संग्रह उचित रूप से सुरक्षित रहे। ध्यान दें कि आप फ़ील्डशील्ड का उपयोग करके किसी भी संख्या में फ़ील्ड को 14 अलग-अलग तरीकों से मास्क कर सकते हैं।

केंद्रीय रूप से परिभाषित डेटा वर्गों के आधार पर कई संरचित, अर्ध-संरचित, असंरचित स्रोतों में डेटा को स्वचालित रूप से खोजना और मास्क करना भी संभव है, जो इस ब्लॉग के अन्य लेख (जैसे यह एक) विवरण। हालांकि, यह उदाहरण निर्यात किए गए चुनावों के आधार पर केवल मास्किंग पहलुओं को दिखाता है।

मास्क करने से पहले का डेटा

यहाँ स्रोत तालिका में रिकॉर्ड हैं, जो MongoVUE के साथ दिखाए गए हैं।


तालिका डेटा निर्यात करना

आदेश चलाने के लिए MongoDB निर्यात उपयोगिता (mongoexport) का उपयोग करें:

--db <Database Name> --collection <Collection Name> --csv --fields <field1,field2,...> --out <Output Path>


डेटा मास्किंग कार्य बनाने के लिए फ़ील्डशील्ड GUI का उपयोग करना

  • IRI कार्यक्षेत्र खोलें और फ़ील्डशील्ड के लिए नई सुरक्षा बनाएं (मास्किंग) कार्य विज़ार्ड प्रारंभ करें।
  • वह नाम चुनें जिसे आप नौकरी देना चाहते हैं, और अगला क्लिक करें।
  • डेटा स्रोत स्क्रीन पर डेटा स्रोत जोड़ें click क्लिक करें और आपके द्वारा बनाई गई CSV फ़ाइल का पता लगाएं।
  • स्रोत विकल्प संपादित करें क्लिक करें और, विकल्प के अंतर्गत, स्वरूप प्रकार को CSV में बदलें और ठीक क्लिक करें।
  • डिस्कवर मेटाडेटा क्लिक करें और विज़ार्ड के माध्यम से पालन करें। इसे ',' के रूप में सेपरेटर का पता लगाना चाहिए और क्षेत्र डेटा उत्पन्न करने में सक्षम होना चाहिए। यह संभवतः डेटा प्रकार के लिए ASCII चुनेगा। इसे बदलने के लिए, उस फ़ील्ड डेटा प्रकार पर क्लिक करें जिसे आप बदलना चाहते हैं और फिर उस डेटा प्रकार का चयन करें जिसका आप उपयोग करना चाहते हैं। एक बार जब आप अपने डेटा प्रकारों से खुश हो जाएं, तो समाप्त करें . क्लिक करें ।

  • अगला क्लिक करें डेटा लक्ष्य स्क्रीन पर जाने के लिए, और डेटा लक्ष्य जोड़ें . पर क्लिक करें . फिर उस CSV फ़ाइल को नाम दें जिसे आप बनाना चाहते हैं, और ठीक . क्लिक करें .
  • लक्ष्य फ़ील्ड लेआउट क्लिक करें स्क्रीन को ऊपर लाने के लिए जहां आप मास्क लगाएंगे:

  • निचली तालिका आपको वे सभी फ़ील्ड दिखाएगी जो आपकी लक्षित फ़ाइल में होंगे। उस फ़ील्ड नाम का चयन करें जिसे आप मास्क करना चाहते हैं, फ़ील्ड सुरक्षा मेनू तीर पर क्लिक करें और ड्रॉप-डाउन बॉक्स से वांछित मास्किंग फ़ंक्शन चुनें।
  • संवाद के पैरामीटर पूर्ण करें, ठीक क्लिक करें (दो बार) और समाप्त करें   कार्य विज़ार्ड पूरा करने के लिए।
  • तब आपकी फील्डशील्ड जॉब आपके लिए जेनरेट की जानी चाहिए:

समीक्षा करें, और यदि आवश्यक हो, तो अपने डेटा मास्किंग कार्य को संशोधित करें और पुनः सहेजें। जिस फ़ाइल को आप वापस MongoDB में अपलोड करेंगे उसे जेनरेट करने के लिए उसे GUI, कमांड लाइन, या किसी एप्लिकेशन के भीतर से चलाएँ।


मुखौटे वाली तालिका आयात करना

आदेशों को चलाने के लिए MongoDB आयात उपयोगिता (mongoimport) का उपयोग करें:

--db <Database Name> --collection <Collection Name> --type csv --fields <field1,field2,...> --upsert --upsertFields <Field to match to old database*> --file <File Path of the file to import (The file created by the Mask Script)>

*पुराने संग्रह में सब कुछ वापस आयात करने के लिए, आपको यह बताना होगा कि आप मौजूदा रिकॉर्ड के विरुद्ध क्वेरी करने के लिए कौन से फ़ील्ड इनपुट कर रहे हैं। एक उदाहरण ईमेल होगा; यह सभी आयात रिकॉर्ड से उनके मौजूदा ईमेल से मेल खाएगा, और रिकॉर्ड को अपडेट करेगा।


मास्किंग के बाद डेटा

लक्ष्य तालिका में रिकॉर्ड नीचे दिए गए हैं; MongoVUE के साथ दिखाया गया है। ध्यान दें कि फील्डशील्ड प्रक्रिया में केवल क्रेडिट कार्ड नंबरों को संशोधित किया गया था; अन्य क्षेत्रों को एक ही समय में समान या भिन्न कार्यों से संरक्षित किया जा सकता था।

फील्डशील्ड नौकरियों की अपेक्षाकृत आसान परिभाषा और निष्पादन के अलावा, मोंगो के साथ इसका उपयोग करने के अन्य फायदे भी हैं, जिनमें शामिल हैं:

  • मात्रा में गति — IRI और Mongo दोनों के प्रदर्शन आर्किटेक्चर को रैखिक रूप से स्केल करने के लिए डिज़ाइन किया गया है
  • क्रॉस-प्लेटफ़ॉर्म संगतता — इन समर्थित स्रोतों में से चुनें
  • एक ही CoSort (SortCL प्रोग्राम, फ़ील्डशील्ड के पैरेंट) जॉब स्क्रिप्ट और I/O पास में एक साथ डेटा एकीकरण, माइग्रेशन, प्रतिकृति, फ़ेडरेशन और रिपोर्टिंग क्षमताएं

संपर्क करें  यदि इस प्रक्रिया के बारे में आपके कोई प्रश्न हैं या नीचे टिप्पणी करें।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में एक सरणी में नेस्टेड उप-दस्तावेज़ निकालें

  2. मोंगोडीबी ऑब्जेक्ट आईडी के लिए रेगेक्स

  3. नोड.जेएस मॉड्यूल 'मोंगोडब' नहीं ढूंढ सकता

  4. मोंगोडीबी के लिए सी # ड्राइवर:सीमा + गिनती का उपयोग कैसे करें?

  5. सी # + मोंगोडीबी - मोंगोडीबी डेटाटाइप/विशेषताओं का उपयोग किए बिना ऑब्जेक्ट आईडी