我在CouchDB用户列表中发布了此问题的一个变体,但尚未收到回复。
我很想知道是否有其他人建造了所谓的“CouchApp”;直接托管在CouchDB中的纯HTML / JavaScript应用程序。如果是这样,您是如何处理用户身份验证的?我希望能够创建一个典型的登录表单(用户名,密码),然后在将用户传递给应用程序之前将这些凭据用于视图或其他机制(同时将其(加密的)用户ID存储在cookie,大概是)。
我习惯于简单地通过couchdb-python和普通的Web服务器代理,但是想知道在这些CouchApps中验证用户的任何最佳实践。
编辑:一年后,现在内置于CouchDB中。 This video是一个很好的示范。 (谢谢丹尼尔!)
答案 0 :(得分:10)
CouchDB已经发布了一个简单的身份验证API,但目前还没有内置的身份验证机制。最简单和最简单的方法是使用http代理进行身份验证。但是,这限制了您可以在每个文档的基础上限制访问量。当CouchDB获得对内置身份验证模块的更多支持时,它应该更容易。
如果您想尝试编写身份验证模块,那么您可以在此文件中查看javascript 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
无论如何,这会让你开始。答案 1 :(得分:8)
这个问题已经存在了一段时间(1。5年!)并且事情已经成熟了很多,因为它得到了回答。观看上面的视频,但它没有解释如何将其构建到您的应用中。现在看来大多数答案都可以在此处找到:Security Features Overview并在本文档的末尾:CouchDB Security。