2009-02-05 5 views
36

Я разместил вариант этого вопроса в списке пользователей CouchDB и еще не получил ответа.CouchApps и аутентификация пользователя

Мне любопытно узнать, построил ли кто-нибудь еще так называемый «CouchApp»; чистое приложение HTML/JavaScript, размещенное непосредственно внутри CouchDB. Если да, то как вы обрабатывали аутентификацию пользователя? Я хотел бы иметь возможность создать типичную форму входа (имя пользователя, пароль), а затем использовать эти учетные данные либо против представления, либо какого-либо другого механизма, прежде чем передавать пользователя в приложение (при сохранении их (зашифрованного) идентификатора пользователя в cookie, предположительно).

Я привык просто проксировать через что-то вроде couchdb-python и обычного веб-сервера, но хотел бы знать какие-либо рекомендации по аутентификации пользователей в этих типах CouchApps.

Редактировать: Год спустя, и теперь это встроено в CouchDB. This video - отличная демонстрация. (Спасибо, Дэниэл!)

+1

Были некоторые недавние разработки с аутентификацией пользователя - ознакомьтесь с http://jchrisa.net/drl/_design/sofa/_show/post/CouchDB-Accounts –

+0

Прохладный, я обязательно проверю его. Благодаря! –

+3

Я тоже сделал рабочую демонстрацию, которая могла бы помочь вам начать работу - она ​​в значительной степени основана на работе Криса Андерсона с Futon: http://github.com/danielalexiuc/CouchApp-User-Authentication-Demo –

ответ

10

CouchDB выпустил простую аутентификацию api, но пока не имеет встроенных механизмов аутентификации. Самый простой и простой способ сделать это - использовать HTTP-прокси для аутентификации. Однако у этого есть ограничения на то, сколько вы можете ограничить доступ на основе документа. Когда CouchDB получает дополнительную поддержку встроенных модулей аутентификации, тогда это должно быть проще.

Если вы хотите попробовать свои силы в кодирования модуль аутентификации, то вы можете проверить источник для яваскрипта тестов security_validation в этом файле: http://svn.apache.org/repos/asf/couchdb/trunk/share/www/script/couch_tests.js

и default_authentication_handler в этом файле здесь: http://svn.apache.org/repos/asf/couchdb/trunk/src/couchdb/couch_httpd.erl

, что бы вы все равно начали.

+0

Спасибо, я думаю, мне придется попробовать создать свой собственный модуль аутентификации на этом этапе. –

+0

Этот ответ по-прежнему действителен? – blueberryfields

+0

Я не думаю, что это действительно на самом деле. Но я не запускал сервер couchdb, поэтому я не уверен на 100%. Вы всегда можете проверить веб-сайт couchdb для проверки. –

8

Этот вопрос существует некоторое время (1,5 года!), И все созрело совсем немного, так как на него был дан ответ. Посмотрите видео выше, но он не объясняет, как его встраивать в ваше приложение. Похоже, что большинство ответов можно найти здесь: Security Features Overview и в конце этого документа: CouchDB Security.

+1

Этот пост также очень полезен: http://blog.mattwoodward.com/2012/03/definitive-guide-to-couchdb.html – Thomas

Смежные вопросы