【问题标题】:Protect Firestore database from attack保护 Firestore 数据库免受攻击
【发布时间】:2019-12-31 15:20:48
【问题描述】:

对于即将启动的副项目,我想设置一个注册表单,人们可以在其中表明他们有兴趣获得邀请。我为应用程序使用 Firestore,并希望创建一个新集合来存储所有潜在用户。

由于此表格发布在公司网站上,我不能使用身份验证的安全规则,因为每个人都必须能够提交表格。因此,写权限是公开的。

我可以采取什么措施来防止智能用户无限地发出写入请求?我的目标是使注册过程尽可能容易访问。

谢谢!

【问题讨论】:

  • 您是否使用 Firebase 身份验证来登录并唯一标识用户?
  • 我是主应用程序,它在子域上运行。
  • 您必须使用 Firebase Auth UID 来确保用户只能读取和写入与 UID 匹配的某些文档。 firebase.google.com/docs/firestore/security/…
  • 您必须使用一些身份验证才能对谁可以写什么施加任何形式的控制。你如何做到这一点取决于你。如果没有身份验证,安全规则将无法识别用户并限制他们可以执行的操作。
  • 您可以实现匿名身份验证,然后使用如下所示的写入速率限制:stackoverflow.com/questions/56487578/…

标签: firebase google-cloud-firestore firebase-security


【解决方案1】:

正如 Doug 在 cmets 中解释的那样,除了使用安全规则之外,无法保护 Firestore 数据库。为此,需要 Firebase 身份验证。欲了解更多信息,请访问: https://firebase.google.com/docs/firestore/security/rules-conditions#authentication

就我而言: 我应用了 Frank 的建议(参见 cmets)并实施了匿名身份验证以限制每个用户可能的写入次数。谢谢!

【讨论】:

    猜你喜欢
    • 2017-04-07
    • 2010-11-04
    • 2011-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-05
    • 2019-08-14
    相关资源
    最近更新 更多