gpt4 book ai didi

authentication - 在将 require_valid_user 设置为 true 时,如何使 CouchDB 数据库对公众可读?

转载 作者:行者123 更新时间:2023-12-04 20:10:48 24 4
gpt4 key购买 nike

我的目标是能够读取一个数据库而无需对用户进行身份验证,应该需要对编辑此数据库进行身份验证。所有其他数据库应该只对有效用户可读/可写。而且我不想为将来创建的每个数据库都设置它,读/写所需的身份验证应该是默认设置。

我以为我可以通过设置 require_valid_user 来做到这一点至true ,但现在 CouchDB 总是要求输入用户名和密码,所以我需要一种方法来排除一个数据库。这个数据库应该对公共(public)可读并且对有效用户是可写的。

最佳答案

我通过一个数据库(即/login)对所有用户进行身份验证来解决这个问题。该数据库是公开的,并且包含一个带有 HTML 文件作为附件的设计文档。为用户提供此文件,在表单上填写他们的凭据,然后我使用 jQuery.couch.js 进行身份验证并将 cookie 存储在他们的浏览器中。一旦他们获得了有效的登录名,我就会检查 userCtx 对象以检查他们的角色,并将他们重定向到适当的数据库。

这是一个 hack,但在 CouchDB 能够在您未登录数据库时提供登录页面而不是 JSON 错误消息之前,这是我找到的唯一可靠的方法。

确保使用设计文档中的 validate_doc_update key 保护您的公共(public)登录数据库,这样除了管理员之外没有人可以覆盖其中的任何内容。

希望这可以帮助。

关于authentication - 在将 require_valid_user 设置为 true 时,如何使 CouchDB 数据库对公众可读?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17504654/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com