2009-02-05 23 views
36

Wysłałem odmianę tego pytania do listy użytkowników CouchDB i nie otrzymałem jeszcze odpowiedzi.CouchApps i uwierzytelnianie użytkownika

Jestem ciekawy, czy ktoś jeszcze zbudował tak zwaną "CouchApp"; czysta aplikacja HTML/JavaScript obsługiwana bezpośrednio w CouchDB. Jeśli tak, jak radziłeś sobie z uwierzytelnianiem użytkownika? Chciałbym móc utworzyć typowy formularz logowania (nazwa użytkownika, hasło), a następnie użyć tych poświadczeń w widoku lub innym mechanizmie przed przekazaniem użytkownika do aplikacji (podczas przechowywania ich (zaszyfrowanego) identyfikatora użytkownika w ciasteczko, prawdopodobnie).

Jestem przyzwyczajony do zwykłego pośredniczenia przez coś takiego jak couchdb-python i normalny serwer WWW, ale chciałbym poznać najlepsze praktyki w zakresie uwierzytelniania użytkowników w tego typu aplikacjach CouchApps.

Edytuj: Rok później, a to jest teraz wbudowane w CouchDB. This video to świetna demonstracja. (Dzięki Daniel!)

+1

Niedawno wprowadzono zmiany w zakresie uwierzytelniania użytkowników - sprawdź http://jchrisa.net/drl/_design/sofa/_show/post/CouchDB-Accounts –

+0

Fajnie, na pewno to sprawdzę. Dzięki! –

+3

Zrobiłem też działające demo, które może pomóc w rozpoczęciu pracy - jest oparte na pracy Chrisa Andersona z Futonem: http://github.com/danielalexiuc/CouchApp-User-Authentication-Demo –

Odpowiedz

10

CouchDB opublikował prosty interfejs uwierzytelniania, ale nie ma jeszcze wbudowanych mechanizmów uwierzytelniania. Najprostszym i najprostszym sposobem na to jest użycie serwera proxy http do uwierzytelniania. Ma to jednak ograniczenia w zakresie ograniczenia dostępu do poszczególnych dokumentów. Gdy CouchDB otrzyma więcej wsparcia dla wbudowanych modułów uwierzytelniania, powinno to być łatwiejsze.

Jeśli chcesz spróbować swoich sił w kodowanie modułu uwierzytelniania następnie można sprawdzić źródło dla javascript testów security_validation w tym pliku: http://svn.apache.org/repos/asf/couchdb/trunk/share/www/script/couch_tests.js

i default_authentication_handler w tym pliku tutaj: http://svn.apache.org/repos/asf/couchdb/trunk/src/couchdb/couch_httpd.erl

które i tak byście zaczęli.

+0

Dzięki, myślę, że będę musiał spróbować stworzyć własny moduł uwierzytelniania w tym momencie. –

+0

Czy ta odpowiedź jest nadal ważna? – blueberryfields

+0

Nie sądzę, że to już jest ważne. Ale od jakiegoś czasu nie uruchomiłem serwera couchdb, więc nie jestem w 100% pewny. Zawsze możesz sprawdzić stronę couchdb, aby zweryfikować. –

8

To pytanie już od jakiegoś czasu (1,5 roku!), A rzeczy znacznie się rozwinęły, odkąd odpowiedziano. Obejrzyj film powyżej, ale nie wyjaśnia on, jak go zainstalować w swojej aplikacji. Wygląda na to, że większość odpowiedzi znajduje się tutaj: Security Features Overview i na końcu tego dokumentu: CouchDB Security.

+1

Ten wpis jest również bardzo pomocny: http://blog.mattwoodward.com/2012/03/definitive-guide-to-couchdb.html – Thomas