2011-03-01 10 views
9

मैं CouchApp और CouchDB के लिए नया हूं और कुछ प्रश्न हैं।CouchApp/CouchDB में सत्र और सुरक्षा?

  1. कैसे मैं अपने खुद के डेटाबेस से CouchApp में सत्र (नहीं _users) कर सकते हैं?
  2. मैं उस सत्र को कैसे प्राप्त करूं?
  3. मैं किसी दस्तावेज़ से डेटा कैसे पार्स कर सकता हूं?

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

{ 
    "_id": "...", 
    "_rev": "...", 
    "XDocType": "user", 
    "name": "Administrator", 
    "password": "1234", 
    "username": "admin" 
} 

मैं एक साधारण लॉगिन बनाने/रजिस्टर/सत्र, नहीं कुकीज़ के साथ लॉगआउट करना चाहते हैं:

मेरी डेटाबेस में मैं इस तरह के एक दस्तावेज है।

उत्तर

11

एक सोफे ऐप के साथ एक सत्र कम महत्वपूर्ण है क्योंकि पूरा एप्लिकेशन क्लाइंट (ब्राउज़र) में चलता है। CouchDB केवल करता है निम्नलिखित:

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

तुम उपयोगकर्ता खातों (_users के बजाय) के लिए डिफ़ॉल्ट डेटाबेस बदल सकते हैं लेकिन आप हमेशा एक उपयोगकर्ता डेटाबेस होना आवश्यक है। आप कर सकते हैंसेट डेटाबेस काताकि अज्ञात उपयोगकर्ता इसका उपयोग नहीं कर सकें। (हालांकि नए उपयोगकर्ता आसानी से साइन-अप नहीं कर सकते हैं, इसलिए यह एक व्यापार-बंद है।)

जनवरी के पास CouchDB security के बारे में एक उत्कृष्ट पोस्ट है।

+0

इसलिए, कम से कम मेरे पास एक ही वेब में 2 डेटाबेस होना चाहिए, है ना? .. यूआरएल –

+2

के लिए धन्यवाद हाँ, प्रति उपयोगकर्ता एक डेटाबेस (साथ ही सार्वजनिक सामान के लिए एक डेटाबेस) एक बहुत ही उचित सोफे ऐप है। एकाधिक डेटाबेस कोई समस्या नहीं है। – JasonSmith

+0

@ जेसनस्मिथ - लाखों उपयोगकर्ताओं के लिए लाखों डेटाबेस का समर्थन करेगा? – rbp

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