【问题标题】:What is the secure way to add Firebase (Firestore) queries to client side code for React Native?将 Firebase (Firestore) 查询添加到 React Native 的客户端代码的安全方法是什么?
【发布时间】:2022-01-07 22:33:47
【问题描述】:

我是 stackoverflow 社区的新人,所以如果不赞成在没有代码的情况下提出这样的问题,请在 cmets 中告诉我如何进行这样的问答。

似乎总是有关于如何使用 Firebase 制作网络/移动应用程序的视频/课程,但几乎没有人关注 Firebase 安全性,只是简要介绍了“Firebase 安全规则”。我不记得我上过的最后一门课程甚至提到过。

无论如何。将 Firestore 查询放入 React Native (Expo) 或一般 Javascript 中的客户端代码/组件中的最佳实践和安全方法是什么?

我看到有些人只是说要确保我的“Firestore 安全规则”已经到位,以防止任何人仅仅读取或写入数据到我的 Firestore 数据库。我还听说“Firebase Cloud Functions”是进行查询的最佳位置,因为它是在服务器上完成的,因此代码不会被弄乱(据说优秀的黑客可以更改客户端代码并让它做他们想做的事?如果是这样,他们是怎么做到的?)。

我真的想首先关注我构建的项目的安全性,但似乎找不到好的答案或简单的解释。如果有人知道如何使用 Firebase 编写安全查询,我将不胜感激。

感谢您提前提供任何信息或其他信息。

【问题讨论】:

    标签: javascript firebase react-native google-cloud-firestore firebase-security


    【解决方案1】:

    在编写查询来检索文档时,请记住,安全规则不是过滤器——查询是全部或全部。为了节省您的时间和资源,Cloud Firestore 会根据其潜在结果集而不是所有文档的实际字段值来评估查询。如果查询可能返回客户端无权读取的文档,则整个请求将失败。

    这里有一些文档可以帮助您了解security works 以及如何在您的项目中实现它。

    【讨论】:

      猜你喜欢
      • 2015-11-24
      • 2015-06-13
      • 1970-01-01
      • 2011-09-17
      • 2021-09-29
      • 1970-01-01
      • 2018-07-25
      • 2012-06-16
      • 1970-01-01
      相关资源
      最近更新 更多