【问题标题】:Algolia + Firestore: Security RulesAlgolia + Firestore:安全规则
【发布时间】:2021-08-12 09:36:27
【问题描述】:

我打算将 Algolia 搜索添加到我正在开发的 React 应用程序中。数据存储在 Cloud Firestore 中。我已经使用 Algolia 的扩展程序设置了 Algolia 和 Firestore 之间的同步,并且我已经测试了即时搜索,效果很好。

但是,我突然想到,当从 Algolia Search 返回数据时,我在 Firestore 中为不同用户角色精心设置的安全规则将被完全忽略。

建议我关注these instructions 对数据实施用户限制。但是现在,我所有的工作都需要按照我想要的方式来设置我的 Firestore 安全规则,这似乎需要付出巨大的努力。这也意味着每当我更改安全规则时,我都必须更改 Algolia 限制。仅用于搜索。

有没有人找到一种更简单的方法来实现类似搜索的查询 Firestore,同时保持他们的安全规则?

【问题讨论】:

    标签: firebase google-cloud-firestore algolia


    【解决方案1】:

    由于您使用可从公共互联网调用的 API 将信息存储在两个地方,因此您需要分别保护对这两个地方的信息的访问。

    我能想到的第一个替代方案是对两个地方的数据使用公共访问点(例如使用 Cloud Functions),然后禁用允许从客户端直接访问的 API。

    正如 OP 在 cmets 中指出的那样,有一种相对方便的方法可以在 Firebase 和 Algolia 之间共享用户身份,在 adding security 部分中记录到 Algolia 集成。

    【讨论】:

    • 感谢 Puf,在发布我的问题后,我发现 Firebase 文档中有关于搜索和安全的具体要点。我决定采用这种方法的一个版本:firebase.google.com/docs/firestore/solutions/…
    • 哦,我没看过,谢谢分享。我也在我的答案中添加了一个它,以便将来的用户更容易找到它。
    • 太好了 :) 谢谢
    猜你喜欢
    • 2018-10-19
    • 2019-07-05
    • 2020-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多