【问题标题】:Couchbase lite - user access controlCouchbase lite - 用户访问控制
【发布时间】:2015-07-31 09:57:22
【问题描述】:

我想在多台设备和运行 iriscouch.com 上的 couchdb 服务器并在 ios 和 android 上使用 couchbase-lite 的用户之间共享数据。用户应该能够使用 facebook 和电子邮件登录。如何处理用户对特定文档的访问?我不希望任何人能够访问文档和数据库。我考虑过使用 HTTP 基本身份验证 (replication security),将用户名和密码硬编码到应用程序代码中。不幸的是,它以纯文本形式发送,看起来完全不安全。你能帮我提一些关于这个场景的想法吗?

【问题讨论】:

  • 我正在开发一个类似的应用程序(CouchDB + Couchbase Lite for Android),我想知道您是如何使用 Facebook 和/电子邮件登录的。这是否也意味着注册一个新用户?任何帮助表示赞赏。

标签: authentication couchdb access-control couchbase-lite


【解决方案1】:

您可以使用 SSL 加密来确保安全。请参阅启用 SSL 的链接 https://wiki.apache.org/couchdb/How_to_enable_SSL.

我在使用 Basic Auth 时遇到了类似的问题,因此我们必须使用 SSL 以使其更安全。

如果你想使用Basic AUth,可以按照这个方法。 1. 对用户名和密码进行编码 例如:username@password 编码后变为 dXNlcm5hbWVAcGFzc3dvcmQ= (使用https://www.base64encode.org/进行编码)。

  1. 使用curl尝试认证

    curl -v -H "Authorization: Basic dXNlcm5hbWVAcGFzc3dvcmQ=" -H "Content- type:application/json" -X GET IP_Address_and_DatabaseName

通过这种方式,您可以隐藏用户名和密码,但任何人都可以拥有编码字符串。因此,如果可能,请尝试实施 SSL。

【讨论】:

  • 听起来不错!太感谢了。我唯一不确定的是,适用于 ios 和 android 的 couchbase lite 是否支持这种类型的身份验证。我会试试这个并发表评论!
  • 老实说,我不知道如何在 couchdb 中做到这一点,但使用 Couchbase Mobile lite 是可能的。见此链接:ti.eng.br/couchbase-mobile-with-jwt-tokens
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-10
  • 2023-03-31
  • 2017-02-21
  • 2015-11-16
相关资源
最近更新 更多