2009-02-05 9 views
36

J'ai posté une variante de cette question à la liste des utilisateurs de CouchDB et je n'ai pas encore reçu de réponse.CouchApps et authentification de l'utilisateur

Je suis curieux de savoir si quelqu'un d'autre a construit un soi-disant "CouchApp"; une application pure HTML/JavaScript hébergée directement dans CouchDB. Si oui, comment avez-vous géré l'authentification des utilisateurs? J'aimerais pouvoir créer un formulaire de connexion type (nom d'utilisateur, mot de passe), puis utiliser ces informations d'identification dans une vue ou un autre mécanisme avant de transférer l'utilisateur à l'application (en stockant son ID utilisateur (crypté) dans un cookie, vraisemblablement). J'ai simplement l'habitude de passer par quelque chose comme couchdb-python et un serveur web normal, mais j'aimerais connaître les meilleures pratiques en matière d'authentification des utilisateurs dans ce type de CouchApps.

Édition: Un an plus tard, il est désormais intégré à CouchDB. This video est une belle démonstration. (Merci Daniel!)

+1

Il y a eu quelques développements récents avec l'authentification de l'utilisateur - consultez http://jchrisa.net/drl/_design/sofa/_show/post/CouchDB-Accounts –

+0

Cool, je vais certainement y jeter un coup d'œil. Merci! –

+3

J'ai aussi fait une démo de travail qui pourrait aider à démarrer - elle est fortement basée sur le travail de Chris Anderson avec Futon: http://github.com/danielalexiuc/CouchApp-User-Authentication-Demo –

Répondre

10

CouchDB a publié une API simple mais n'a pas encore de mécanismes d'authentification intégrés. Le moyen le plus simple et le plus simple de le faire est d'utiliser un proxy http pour l'authentification. Cependant, cela a des limites sur combien vous pouvez restreindre l'accès sur une base par document. Lorsque CouchDB obtient plus de soutien pour les modules d'authentification intégrés, il devrait être plus facile.

Si vous voulez essayer à coder un module d'authentification, vous pouvez vérifier la source pour les javascript tests security_validation dans ce fichier: http://svn.apache.org/repos/asf/couchdb/trunk/share/www/script/couch_tests.js

et le default_authentication_handler dans ce dossier ici: http://svn.apache.org/repos/asf/couchdb/trunk/src/couchdb/couch_httpd.erl

qui vous aiderait à démarrer quand même.

+0

Merci, je pense que je vais devoir essayer de créer mon propre module d'authentification à ce stade. –

+0

Cette réponse est-elle toujours valide? – blueberryfields

+0

Je ne pense pas que cela soit plus valable en fait. Mais je n'ai pas lancé de serveur couchdb depuis un moment donc je ne suis pas sûr à 100%. Vous pouvez toujours vérifier le site Web de couchdb pour vérifier. –

8

Cette question a été autour depuis un certain temps (1,5 ans!) Et les choses ont mûri un peu depuis qu'il a été répondu. Regardez la vidéo ci-dessus, mais cela ne vous explique pas comment l'intégrer dans votre application. Il semble que la plupart des réponses se trouvent maintenant ici: Security Features Overview et à la fin de ce document: CouchDB Security.

+1

Ce message est également très utile: http://blog.mattwoodward.com/2012/03/definitive-guide-to-couchdb.html – Thomas

Questions connexes