【发布时间】:2016-12-15 15:42:14
【问题描述】:
我想通过他们的数据向我的用户提供全文搜索 - 并确保他们只能访问他们拥有的数据。是否有任何模式允许在 Algolia 上这样做?我考虑过的解决方案似乎都不合适,所以我想知道我是否忽略了其他一些选择。
我们可以将每个用户的数据托管在单独的 Algolia 应用程序中,这样每个 API 密钥都只能访问相关数据,但这很快就会变得难以承受,因为许多记录会达到 10000 条记录的限制。
我们可以将每个用户的数据托管在单独的索引中并使用团队索引限制,但似乎没有 API 来管理这些,而且无论如何这都需要为每个客户提供一个 Algolia 帐户,这似乎是对服务(例如,我们可以在我们的域名下生成电子邮件地址)。
最后,我们可以使用一些 userId 过滤查询以仅检索相关数据,但这并不安全,因为有人可以在没有过滤器的情况下使用 apikey 查询 algolia。 我们可以代理 algolia 调用来注入过滤器和 api 密钥 - 但性能损失可能会很高。
还有其他建议吗?谢谢!
【问题讨论】:
-
你好冯德!这是一个很好的问题,但对于 StackOverflow 来说是题外话,因为它与编程无关。你能把它贴在阿尔戈利亚论坛上吗? discourse.algolia.com/c/development我会确保它得到解决。
-
@Josh 你是对的。完成!
-
如果你考虑使用多应用解决方案,我建议你这个网站来管理你的应用程序。目前,您只能将来源应用程序复制到目标应用程序(完整复制、仅设置复制或仅数据复制)并清除您选择的环境。 algoliaextended.com希望对您有所帮助。
标签: algolia