【问题标题】:Firestore rules - Can a user write outside the app scope?Firestore 规则 - 用户可以在应用范围之外编写吗?
【发布时间】:2020-05-19 09:36:03
【问题描述】:

我开始查看 Firestore 的数据库规则,我想知道:用户可以使用“被黑”的应用程序执行不需要的请求吗?我的意思是,在我的应用程序上,用户的范围相当有限,因此他不能对数据库造成损害,但是对于同一个应用程序“被黑”,是否可以使用用户令牌来执行不需要的请求?

我的问题可能不清楚,但简单来说:我的应用程序的用户可以执行我没有写入代码的请求吗?

谢谢

【问题讨论】:

    标签: firebase google-cloud-firestore


    【解决方案1】:

    我的应用程序的用户能否执行我没有写入我的应用程序的请求? 代码?

    答案是是的

    任何可以获取您的 Firebase 配置元素的人都可以使用 JavaScript SDK 编写一个简单的 HTML 页面并尝试与您的 Firestore 后端进行交互。请注意,获取 Firebase 配置元素并不难,请参阅this answer

    或者,更简单,用户只需使用Firestore REST API


    因此,结论是您确实需要使用适当的安全规则来保护您的数据

    【讨论】:

    • 感谢您的快速回答,我不知道获取 Firebase 配置元素很容易,您使用 HTML 页面 + Javascript SDK 的示例说明了这一点。只是为了增加一层“安全性”(或者只是为了阻止不那么持久的人),你知道“隐藏”Firebase Config 元素的方法吗?我将 Javascript SDK 与 VueJS + Flutter 的 Firebase SDK 一起使用。再次感谢:)
    • 而且,根据您的回答,“黑客”很容易让您的账单变得昂贵,不是吗?我的意思是,假设我有一个 10K 文档的集合,黑客可以轻松地执行一个循环来检索这个集合而没有任何查询限制,结果会人为地爆炸读取计数器,对吗?跨度>
    • “你知道“隐藏” Firebase Config 元素的方法吗? -> 不,见stackoverflow.com/questions/37482366/…
    • “假设我有一个 10K 文档的集合,黑客可以轻松地循环检索这个集合” -> 这取决于访问权限。如果您的安全规则允许所有人读取或写入 Firestore,那么一个恶意用户确实可以生成大量请求。 Firebase/Goggle Cloud 监控服务是否存在 DOS 或类似攻击,您应该联系support 了解更多信息。
    • 嗨,抱歉忘了这样做 :) 完成 + 接受作为答案,再次感谢。
    猜你喜欢
    • 1970-01-01
    • 2019-09-19
    • 1970-01-01
    • 1970-01-01
    • 2019-02-28
    • 2011-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多