【问题标题】:How do I limit a CouchApp's access to CouchDB's `_user` table?如何限制 CouchApp 对 CouchDB 的 `_user` 表的访问?
【发布时间】:2012-03-25 03:54:02
【问题描述】:

我想就如何为我的 CouchDB 应用程序构建用户数据获得一些建议。

以下是我们正在构建的内容:我们正在创建一套应用程序(主要利用 html5 的视频 API)来培训人们掌握不同的技能。我们将从一些简单的视频讲座和互动活动开始。我们希望保存个人用户的进度,并且在不久的将来,我们希望创建一些迷你课程,供用户分组学习。多个用户会实时参与(如 google 文档)或长时间(如 wiki)参与相同的活动。

我关心的是私人用户数据。最终,对于我们和用户来说,使用他们的电子邮件地址和密码进行注册是最简单的。但是,在 CouchDB 的 _user 数据库中,对数据的读取访问基本上是公开的,我宁愿不公开所有用户的电子邮件地址。如何将这些电子邮件地址设为私密是我最关心的问题。此外,如果我们可以将所有用户数据设为私有,除非用户选择将其公开,这将是一件好事。

我想到了几个选项,并阅读了这篇文章和 wiki 上的许多其他文章:http://wiki.apache.org/couchdb/PerDocumentAuthorization

我真的不倾向于任何事情,希望得到一些建议。

【问题讨论】:

    标签: security couchdb couchapp


    【解决方案1】:

    在即将发布的 CouchDB-1.2.0 中,_users 数据库中的文档只能由各自经过身份验证的用户和管理员读取。

    【讨论】:

    • 真相?!那么如果我以特定用户身份登录,我就无法读取其他用户的数据?
    • 刚刚测试过,效果非常好。用户可以 GET POST 并(可能)删除他们自己的 _user 文档,但甚至无法阅读其他人的文档。当他们 GET 别人的文档时,他们会在响应中“丢失”。其他用户甚至存在的唯一提示是 _user db 上的 doc_count。非常感谢马塞洛!
    猜你喜欢
    • 1970-01-01
    • 2015-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-10
    • 2023-03-31
    相关资源
    最近更新 更多