javascript - Firebase 基本规则问题
问题描述
我有一个存储用户信息的 firebase 实时数据库。我正在创建一个仪表板,我可以在其中跟踪所有这些,但我在创建安全规则时遇到了麻烦。我希望能够在此仪表板上读写,但用户无法读取数据库。我将是仪表板上唯一的人,因为它是本地的。我正在考虑检查我可以在仪表板中拥有的 api 密钥,但我在网上找不到任何信息。如果您有任何建议,请让我知道。以下是我目前的规则。我把它放在没有人可以读取数据库但他们可以写入它的地方。我希望能够从仪表板读取数据库。
{
"rules": {
".read": "false",
".write": true,
"posts": {
"$uid": {
".write": "!data.exists()"
}
}
}
}
解决方案
安全规则将取决于用户可以读/写的确切内容,但如果您想成为唯一可以做到这一点的人,您可以将安全规则设置为类似,
{
"rules": {
"users": {
"$node_with_data": {
".write": "auth.uid === 'enter_your_uid_here_123' ",
".read": "auth.uid === 'enter_your_uid_here_123' "
}
}
}
}
这意味着唯一可以读取/写入指定节点的人是具有与您输入的匹配的 uid 的用户。显然,这意味着用户无法写入此节点,因此您需要考虑您拥有哪些类型的用户以及允许他们访问的内容。
这是一个有用的链接Firebase 安全规则
推荐阅读
- c - 时间复杂度嵌套循环内循环+外循环
- r - rcpp 函数中作为 arma 对象的矩阵列表
- c# - 从我的程序运行应用程序的启动方式与手动双击时不同
- javascript - 需要创建一个新的隐藏 div,在点击后显示
- javascript - 键入时更新输入数字
- javascript - Material UI - 如何从工具提示中完全删除背景\颜色
- rust - 使用 web_sys::HtmlButtonElement 失败
- flutter - 没有为类“LoginPage”定义方法“sendOtp”
- azure-devops - Azure DevOps 版本中的“不允许使用与号”
- dart - 使用 dart.io 读取 txt 文件时出错