javascript - 如何设置firebase数据库安全规则?

标签 javascript firebase firebase-security

情况是,我有一个网站,最后用户可以通过填写表格进行订购,但不需要注册或登录,更具体地说,无法注册或登录。当表单已填写,使用提交按钮我想使用函数验证输入,如果它们有效,则将其发送到 Firebase。有几个问题:

  • 无法对用户进行身份验证,我需要将 Firebase 安全规则设置为“开放”,以便每个人都可以向数据库写入和读取数据(但这可能是一个很好的解决方案,设置为每个人都可以写入,但是只是我可以读取数据。
  • 我读了一些关于配置变量的内容,并且没有很好的可能性来隐藏它,所以如果有人编写一个简单的 js 程序,并将配置设置为我的文件中的内容,它可以对数据库执行任何操作

我想这真的是按顺序读取用户输入的最佳解决方案吗?我想也许js可以以某种方式将数据发送到我的电子邮件地址,但经过仔细研究,我可以' t发现了这种可能性。无论如何,Firebase 问题肯定有解决方案。我想要的是设置通过网站写入数据库的唯一可能性,并仅通过 Firebase 控制台读取数据。

最佳答案

如果您没有对用户进行身份验证,您无能为力,我想最好的选择是设置写入规则来保护所保存数据的完整性(因此,即使具有访问权限的人也可以写入数据)必须遵循一个结构):https://firebase.google.com/docs/database/security/securing-data并将读取规则设置为无人。

另一种方法可能是在后端服务器上使用 API,以确保所有请求仅在将其保存到 Firebase 之前来自您的网站。这样您就不必公开您的 firebase 配置。

关于javascript - 如何设置firebase数据库安全规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52777772/

相关文章:

javascript - 在代码中动态处理字符串和数组

javascript - 通过 Facebook Graph API 检查用户是否属于群组

java - 如何将一个屏幕中生成的ID推送到另一个屏幕(不是紧邻生成iD的屏幕之后的屏幕)?

firebase - Cloud Firestore 安全规则中的 MapDiff 是什么?

javascript - 在 JavaScript 中遍历非标准对象属性

javascript - 日期未显示 eonasdan datetimepicker

javascript - Firebase 数据更改时 Google Charts 不会更新

Firebase 云函数传播运算符未通过 eslint 检查且上传失败

swift - updateData FieldValue.arrayUnion([value]) [swift] 的 Firebase Cloud Firestore 安全规则

swift - Firebase 规则 - 仅限于特定用户还是仅在获得授权的情况下?