2011-12-01 13 views
12

मैं एक स्टैंडअलोन couchdb आवेदन बना रहा हूँ। इन्हें कॉचएप कहा जाता है। विचार यह है कि डेटाबेस स्वयं पोर्ट 80 पर परोसा जाता है और एचटीएमएल देता है और वास्तविक वेबसाइट के रूप में काम करता है। यह एक बहुत ही शक्तिशाली विचार है और मैं आपके डेटाबेस के अंदर अपना कोड लाइव रखने की इस नई अवधारणा से पूरी तरह से आश्चर्यचकित हूं।CouchApp उपयोगकर्ता पंजीकरण

लेकिन मुझे उपयोगकर्ता पंजीकरण के साथ कुछ समस्याएं आ रही हैं। कॉचडब में बनाया गया एक कुकी को सेट करने की अनुमति देता है और इसे आपकी वेबसाइट में प्लग करना वास्तव में आसान बनाता है। लेकिन कई महत्वपूर्ण चीजें गायब हैं कि मेरे ऐप को यह कहने के लिए जरूरी है कि इसमें "उचित" उपयोगकर्ता पंजीकरण प्रणाली हो।

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

  2. यदि कोई उपयोगकर्ता अपना पासवर्ड भूल जाता है तो उसे पुनर्प्राप्त करने में उनकी सहायता करने के लिए कोई सुविधा नहीं है।

कोई विचार यह है कि मैं निम्न स्तर पर कोई कट्टर एरलांग विकास किए बिना इन मुद्दों को कैसे दूर कर सकता हूं (एक एरलांग लड़का नहीं)? यह बहुत अच्छा होगा अगर किसी को पता था कि क्या मैं ट्विटर या गिटहब खातों के खिलाफ प्रमाणीकृत करने के लिए ओएथ का उपयोग कर सकता हूं और यह कि कैसे couchdb डेटा को संभाला जाता है (validate_doc_update फ़ंक्शंस के अंदर) के साथ असीमित रूप से एकीकृत होता है।

धन्यवाद

उत्तर

11

उपयोगकर्ता डेटाबेस में बनाया काम कर सकते हैं, मैं इसे कार्यप्रवाह आप का वर्णन के लिए सिफारिश नहीं होगा। यहाँ कुछ अन्य विकल्प हैं:

ब्राउज़र आईडी

मैं वास्तव में BrowserID का उपयोग कर की सिफारिश करेंगे। IrisCouch यहाँ CouchDB करने के लिए एक प्लगइन प्रदान की गई है:

https://github.com/iriscouch/browserid_couchdb

यह सामान्य पंजीकरण कार्यप्रवाह का ध्यान रखेगा।

आप इसे एक कदम आगे ले और अपने उपयोगकर्ताओं को करना चाहते हैं "काफी बेनामी", तो आप इस couchapp "Mingle"

https://github.com/thedod/Mingle

ट्विटर एकता

मैक्स नामक के उदाहरण का अनुसरण कर सकते हैं ओग्डेन की "डेटाकच" परियोजना में ट्विटर के माध्यम से एक लॉग है, हालांकि यह काम करने के लिए कुछ नोड बाहरी प्रोसेसर का उपयोग कर रहा है।यहाँ देखें:

https://github.com/maxogden/datacouch/blob/master/processors/auth/twitterauth.js

फेसबुक एकीकरण

https://github.com/ocastalabs/CouchDB-Facebook-Authentication

OpenID

https://github.com/mcaprari/couchdb-openid


मुझे लगता है कि आप काउच साथ विशुद्ध रूप से OAuth का उपयोग कर सकते नहीं है, एक रों इस पोस्ट पता चलता है:

http://bennolan.com/2011/01/11/couchdb-oath.html

तो

निकटतम तुम वहाँ पीछा कर रहा है क्या Datacouch किया है मिल जाएगा।

आशा है कि ये सुझाव मदद करें।

+0

धन्यवाद। यह बहुत सारी सामग्री है जिस पर मैंने भी ठोकर खाई है। और यह भी एक और मुद्दा है (मैक्स ओडगेन से बात करने के बाद) कुकी समाप्ति समय केवल तब तक चल रहा है जब तक कि आपका ब्राउज़र खुला न हो ... जो पूरी तरह से भयानक है। मैं आपका जवाब स्वीकार करूंगा और आशा करता हूं कि 1.2 इनमें से कुछ को ठीक करेगा। –

+2

आप ओथ का उपयोग 1.3 के रूप में कर सकते हैं –

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