代码之家  ›  专栏  ›  技术社区  ›  Avaq

私有数据库上的公共重写

  •  0
  • Avaq  · 技术社区  · 7 年前

    我正在创建一个 单页 CouchApp,使用 _attachments 直接从CouchDB为JavaScript应用程序提供服务。我已经建立了一个虚拟主机 db/_design/ddoc/_rewrite 为了实现这一点。

    数据库中的数据只能由中的某些用户查看 _users 数据库,通过将其作为成员添加到 db/_security 文件

    我希望已经打包了PouchDB的单页应用程序能够控制获取数据,并通过以下方式执行身份验证: pouchdb-authentication . 这就是问题所在:在进行身份验证之前,我无法访问应用程序。

    这就引出了我的问题;有没有办法暴露 _附件 在发给未经认证用户的设计文件中, 没有 允许每个人访问数据库的其余部分?目前,我正在考虑将我的应用程序存储在一个没有任何成员的单独数据库中,但我更喜欢使用单个数据库,并在适当的权限系统下解决它。

    1 回复  |  直到 7 年前
        1
  •  0
  •   aleknaui    7 年前

    简而言之,答案是否定的。你可以尝试以下几点:

    • 在一个单独的公共空数据库中创建身份验证应用程序,然后从那里重定向到你的应用程序(你必须在同一个域中)。
    • 这是非常不安全和次优的 但出于测试目的,您可以在应用程序中启用基本身份验证,这将为您提供一种在被拒绝访问数据库之前通过浏览器进行身份验证的方法。