2016-12-14 33 views
5

रिमोट सर्वर तक पहुंचने के लिए क्लाइंट-साइड पर PouchDB का उपयोग करते समय पालन करने के लिए सबसे अच्छी सुरक्षा अभ्यास क्या है?पाउचडीबी सुरक्षा

कोड के साथ दूरदराज के सर्वर के साथ https://pouchdb.com/getting-started.html समन्वयित हो जाता है पर उदाहरण:

var remoteCouch = 'http://user:[email protected]/todos'; 

समस्या मैं शायद नहीं उपयोगकर्ता एक फ़ाइल वे डाउनलोड कर सकते हैं साथ प्लेन पासवर्ड देखना चाहते है - भले ही वह फ़ाइल केवल प्रमाणित उपयोगकर्ताओं को दिखायी जाती है।

कृपया सलाह दें। अग्रिम धन्यवाद,

उत्तर

0

यह आपके दूरस्थ सर्वर पर निर्भर करता है। यदि आप कॉच डीबी सर्वर का उपयोग करते हैं, तो आप इसे केवल SSL (HTTPS) के माध्यम से संवाद करने के लिए कॉन्फ़िगर कर सकते हैं, विवरण के लिए docs देखें।

यदि आप सीधे अपने इंटरनेट पर अपने कॉच डीबी सर्वर का पर्दाफाश नहीं करना चाहते हैं, तो आप इसे रिवर्स-प्रॉक्सी के पीछे भी छुपा सकते हैं, उदा। mod_proxy एक्सटेंशन और SSL सक्षम के साथ एक अपाचे सर्वर।

+4

एसएसएल का उपयोग करने से हमलावर के खिलाफ मदद नहीं मिलती है जो जावास्क्रिप्ट स्रोत से पासवर्ड पढ़ सकता है –

1

प्रत्येक साइट उपयोगकर्ता के पास अपना खुद का CouchDB उपयोगकर्ता होना चाहिए। जैसा कि @onno सुझाव देता है, CouchDB तक पहुंचने के लिए HTTPS और उपयोगकर्ता के लॉगिन प्रमाण-पत्र का उपयोग करें। क्लाइंट-साइड जावास्क्रिप्ट में पासवर्ड कभी उपलब्ध नहीं होना चाहिए।

1

यहां CouchDB के लिए सभी चीजों के बारे में really good article है।

मेरे पास सोफेडबी के साथ एक उत्पादन सर्वर है जो स्थानीयहोस्ट पर HTTP का उपयोग करने के लिए कॉन्फ़िगर किया गया है लेकिन बाहरी अनुरोधों को stunnel के माध्यम से CouchDB पर पुनर्निर्देशित HTTPS की आवश्यकता होती है।

क्लाइंट पर मैं स्थानीय, प्रतिकृति डीबी बनाए रखने के लिए पाउचडीबी का उपयोग करता हूं। एचटीटीपीएस पर कॉच डीबी के साथ संचार स्थापित करने के लिए हैंडशेक के हिस्से के रूप में, सॉफ़्टवेयर को अन्य सर्वर से कॉच डीबी क्रेडेंशियल्स प्राप्त होता है - क्रेडेंशियल क्लाइंट पक्ष को कभी भी संग्रहीत नहीं किया जाता है।

pouchdb-authentication एक अच्छी प्लगइन है, लेकिन मुझे व्यक्तिगत रूप से ऑथ को संभालने में बेहतर लगता है।

संबंधित मुद्दे