2011-04-05 31 views
7

में उपयोगकर्ता नाम और पासवर्ड बदलना मैं अपने sproutcore एप्लिकेशन में एक CouchDB _users डेटाबेस में साइनअप/लॉगिन/लॉगआउट करने के लिए jquery.couch.js का उपयोग कर रहा हूं। क्या कोई उपयोगकर्ता _id और पासवर्ड बदलने के लिए किसी विधि से अवगत है?CouchDB _user डेटाबेस

उत्तर

5

दुर्भाग्यवश, ऐसा करने के लिए कोई अंतर्निहित API नहीं है। अब के लिए सबसे अच्छी बात है निर्माण के लिए jquery.couch.js कोड को पढ़ने और संशोधन खाते के लिए समान कोड या एल्गोरिदम का उपयोग करना है।

विशेष रूप से, आपको पासवर्ड बदलने के लिए password_sha और salt मानों को अपडेट करने की आवश्यकता है। उपयोगकर्ता नाम बदलने के लिए, आपको एक नया दस्तावेज़ बनाना होगा, फिर पुराना दस्तावेज़ हटाएं। सिंक में _id और name मान रखें और आप ठीक रहेगा।

+0

टिप के लिए धन्यवाद। मुझे संदेह था कि एक नया उपयोगकर्ता/पुराना हटाने का तरीका होगा अगर कोई संशोधन एपीआई नहीं था। मै उसे करने की एक कोशिश तो करूंगा। –

11

जहाँ तक मुझे पता है कि उपयोगकर्ता आईडी को बदला नहीं जा सकता है लेकिन पासवर्ड कर सकता है।

CouchDB documentation विस्तार से एक उपयोगकर्ता पासवर्ड बदलने की प्रक्रिया, लघु वर्णन करता है:

  • org.couchdb.user:<myuser> दस्तावेज़

  • जाओ प्लेन पासवर्ड के साथ एक पासवर्ड फ़ील्ड जोड़ें

  • स्टोर दस्तावेज़ को _users डेटाबेस पर वापस

जैसे ही दस्तावेज़ डेटाबेस में है, CouchDB PBKDF2 (कम से कम CouchDB 1.3 के बाद) सादे टेक्स्ट पासवर्ड को दोहराता है।