उल्का के पास क्या सुरक्षा तंत्र है? [बन्द है]


92

हम सभी जानते हैं कि उल्का मिनीमोंगो चालक प्रदान करता है जो ग्राहक को लगातार परत (मोंगोडीबी) तक पहुंचने की अनुमति देता है।

यदि कोई भी क्लाइंट लगातार एपीआई तक पहुंच सकता है तो कोई अपने आवेदन को कैसे सुरक्षित कर सकता है?

उल्का प्रदान करने वाले सुरक्षा तंत्र क्या हैं और उनका उपयोग किस संदर्भ में किया जाना चाहिए?


6
मुझे पसंद है कि यह पहले से ही संबोधित किया जा रहा है, लेकिन उन्हें वास्तव में वीडियो में इसका उल्लेख करना चाहिए था। मुझे लगता है कि बहुत से किसी भी वेब डेवलपर को यह देखकर यह सवाल उनके दिमाग में 10 सेकंड तक रहेगा, जब तक कि यह खत्म नहीं हो जाता, और बस इतना गुस्सा आता है कि इतने बेहतरीन उत्पाद के लिए वे पूरी तरह से स्पष्ट सुरक्षा समस्या की अनदेखी कर रहे हैं।
नटं

6
Meteor 0.5.0 ने उपयोगकर्ता प्रमाणीकरण को जोड़ा meteor.com/blog/2012/10/17/…
hipertracker

इसे फिर से खोलने के लिए आप इसे थोड़ा सा reword कर सकते हैं। शायद "मुझे क्या सुरक्षा उपाय करने चाहिए?" या "क्या सुरक्षा विकल्प उपलब्ध हैं?"
joeytwiddle 8

1
राय आधारित? वाट? मुझे लगता है कि यह फिर से एक ऑडिट था क्योंकि यह स्पष्ट रूप से राय आधारित नहीं है।
bjb568

मैं इस बात से सहमत हूं, राय आधारित निर्णय संदर्भ से बाहर है - उत्तर सत्य तथ्यों पर आधारित हैं।
ओलिवियर रेफलो

जवाबों:


64

जब आप उल्का कमांड का उपयोग करके एक ऐप बनाते हैं, तो डिफ़ॉल्ट रूप से ऐप में निम्नलिखित पैकेज शामिल होते हैं:

  • AUTOPUBLISH
  • असुरक्षित

साथ में, ये प्रत्येक क्लाइंट के सर्वर के डेटाबेस तक पूर्ण पढ़ने / लिखने की पहुंच के प्रभाव की नकल करते हैं। ये उपयोगी प्रोटोटाइप टूल (केवल विकास के उद्देश्य) हैं, लेकिन आमतौर पर उत्पादन अनुप्रयोगों के लिए उपयुक्त नहीं हैं। जब आप प्रोडक्शन रिलीज़ के लिए तैयार हों, तो इन पैकेजों को हटा दें।

अधिक जोड़ने के लिए, उल्का प्रमाणीकरण को संभालने के लिए फेसबुक / ट्विटर / और बहुत अधिक संकुल का समर्थन करता है , और सबसे अच्छा खाता-यूआई पैकेज है


2
उल्का 0.5 के रूप में सही
ओलिवियर रिफालो

5
डिफ़ॉल्ट रूप से असुरक्षित। ओह।
जुडाह गेब्रियल हिमंगो

16
@ जूदाहीमंगो केवल परीक्षण उद्देश्यों के लिए असुरक्षित है , और जब आप उत्पादन के लिए तैयार होते हैं तो उन दो पैकेजों को हटाना उतना ही आसान होता है meteor remove autopublish insecure
बेंजामिनरह

1
उल्का तरीकों के बारे में क्या? क्लाइंट को कंसोल से असुरक्षित एक्सेस अनइंस्टॉल के साथ भी एक्सेस किया जा सकता है, क्योंकि वे सर्वर पर चलते हैं। कोई उन्हें कैसे सुरक्षित बना सकता है?
22

2
@ मतिन्या लेकिन सांत्वना से उन लोगों के उपयोग और निष्पादन पर, यह एक access deniedत्रुटि फेंक देगा । इसकी जांच - पड़ताल करें।
अज्दुक

35

में संग्रह दस्तावेज़ का कहना है:

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


1
: इसके अलावा उल्का डेवलपर्स में से एक से एक जवाब के साथ Quora पर इस सूत्र se quora.com/Meteor-web-framework/Whats-cool-about-Meteor/answer/...
dentarg

1
@jonathanKingston लिंक टूट गया है, क्या आप इसे अपडेट कर सकते हैं?
कार्लोस बार्सिलोना

@CarlosBarcelona डोमेन की समय सीमा समाप्त हो गई और लेख उल्का में सुरक्षा अपडेट से पहले था। मुझे लगता है कि यह कहना उचित है कि यह पुराना था; इसलिए मैंने लोगों को समय बचाने के लिए टिप्पणी को हटा दिया है। धन्यवाद
jonathanKingston

5

यदि आप क्लाइंट को अपने अनधिकृत इंसर्ट / अपडेट / डिलीट एपीआई में से किसी का उपयोग नहीं करने के लिए प्रतिबंधित करने के बारे में बात कर रहे हैं, तो संभव है।

Https://github.com/meteor/meteor/tree/171816005fa2e263ba54d08d596e5b94dea47b0d/examples/dodos पर उनका टूडू ऐप देखें

इसके अलावा, उन्होंने अब एक ऑटोह मॉड्यूल बनाया है, जो आपको लॉगिन और रजिस्टर करने देता है। तो यह सुरक्षित है। जहाँ तक आप XSS, Valiations, क्लाइंट हेडर आदि का ध्यान रख रहे हैं।

लेकिन आप किसी भी दिन उल्का ऐप को नोड में तैनात करके पूरी तरह से काम करने वाले नोडज एप्लिकेशन में बदल सकते हैं। इसलिए यदि आप जानते हैं कि एक नोडज एप्लिकेशन को कैसे सुरक्षित किया जाए तो आपको उल्का को सुरक्षित करने में सक्षम होना चाहिए।


1
यह पूरी तरह से सितंबर 2012 के रूप में सच है
ओलिवियर रिफलो

2

0.6.4 तक, विकास मोड के दौरान, is_client और is_server ब्लॉक अभी भी दोनों क्लाइंट सिस्टम पर जाते हैं। जब आप विकास मोड को बंद कर देते हैं तो मैं इन्हें अलग नहीं कर सकता।

हालाँकि, यदि वे नहीं हैं, तो एक हैकर यदि (Meteor.is_server) कोड के ब्लॉक की समीक्षा करके सिस्टम से जानकारी प्राप्त करने में सक्षम हो सकता है। यह विशेष रूप से मुझे चिंतित करता है, खासकर क्योंकि मैंने नोट किया कि मैं अभी भी इस बिंदु पर क्लाइंट और सर्वर पर अलग-अलग फ़ाइलों में संग्रह को अलग नहीं कर सकता।

अपडेट करें

खैर, बिंदु को गैर-सर्वर निर्देशिका में is_server ब्लॉक में सुरक्षा से संबंधित कोड नहीं डाला जाता है (यानी - यह सुनिश्चित करें कि यह / सर्वर के तहत कुछ में है।

मैं यह देखना चाहता था कि क्या मैं क्लाइंट और सर्वर निर्देशिका में क्लाइंट और सर्वर कलेक्शंस को अलग करने में सक्षम नहीं था। वास्तव में इससे कोई समस्या नहीं है।

यहाँ मेरी परीक्षा है। यह प्रकाशित / सदस्यता मॉडल का एक सरल उदाहरण है जो ठीक काम करता है। http://goo.gl/E1c56


1
समाधान सर्वर / फ़ोल्डर में अपने कोड को बचाने के लिए होगा - इस तरह से यह क्लाइंट को धक्का नहीं देता है।
ओलिवियर रिफलो

DrM, कृपया देखें docs.meteor.com/#structuringyourapp - संवेदनशील कोड क्लाइंट को डिलीवर करने की आवश्यकता नहीं है
emgee

कुछ सरल करने की कोशिश करो; सर्वर फ़ाइल में एक संग्रह बनाएं, फिर क्लाइंट फ़ाइल में वही संग्रह बनाएं और मुझे बताएं कि क्या होता है। अगला, संग्रह की घोषणा के साथ एक रूट फ़ाइल बनाएं, फिर बस एक सर्वर और क्लाइंट निर्देशिका फ़ाइल में संदर्भ दें और मुझे बताएं कि क्या होता है। यदि आप संग्रह नहीं बना सकते हैं, जैसे मैं नहीं कर सकता, तो आप इनका स्वतंत्र रूप से संदर्भ कैसे दे सकते हैं? अंत में, आपको उसी क्लाइंट उपलब्ध फ़ाइल में मौजूद संग्रह के संदर्भ की आवश्यकता है और is_server और is_client का उपयोग करना है। मुझे आशा है कि मैं गलत हूं, लेकिन मुझे अभी तक यह पता नहीं चला है कि कैसे या क्यों।
DrM

हम्म, अजीब, परीक्षण ठीक लगता है, जवाब अपडेट करेगा
DrM

लिंक सरल कोड के लिए एक रेपो है, लेकिन ठीक काम करने के लिए लगता है, यह नहीं पता है कि अतीत में क्या अजीब त्रुटियां थीं या मैं उन्हें कैसे पुन: बना सकता हूं।
DrM
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.