Javascript Firebase基本规则问题
我有一个firebase实时数据库,存储用户信息。我正在创建一个可以跟踪所有这些信息的仪表板,但在创建安全规则时遇到了问题。我希望能够在此仪表板上读写,但用户无法读取数据库。我将是仪表板上唯一的人,因为它是本地的。我想检查一个api密钥,我可以在仪表板上找到它,但是我在网上找不到任何信息。如果你有任何建议,请告诉我。以下是我目前的规则。我有它,没有人可以读取数据库,但他们可以写入它。我希望能够从仪表板读取数据库Javascript Firebase基本规则问题,javascript,firebase,security,firebase-realtime-database,firebase-authentication,Javascript,Firebase,Security,Firebase Realtime Database,Firebase Authentication,我有一个firebase实时数据库,存储用户信息。我正在创建一个可以跟踪所有这些信息的仪表板,但在创建安全规则时遇到了问题。我希望能够在此仪表板上读写,但用户无法读取数据库。我将是仪表板上唯一的人,因为它是本地的。我想检查一个api密钥,我可以在仪表板上找到它,但是我在网上找不到任何信息。如果你有任何建议,请告诉我。以下是我目前的规则。我有它,没有人可以读取数据库,但他们可以写入它。我希望能够从仪表板读取数据库 { "rules": { ".read&q
{
"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与您输入的uid匹配的用户。显然,这意味着用户无法写入此节点,因此您需要考虑您拥有的用户类型以及允许他们访问的内容
这里有一个有用的链接我所做的是使用firebase身份验证,我所能做的是只允许经过身份验证的用户通过,因为我不认证任何人,或者我只能让我的Gmail通过,这非常好用!我的看起来像这样
{
"rules": {
".read": "auth.token.email_verified == true && auth.token.email.matches(/YOUROWNEMAIL/)",
".write": true,
"posts": {
"$uid": {
".write": "!data.exists()" // This makes it so nobody can delete anything
}
}
}
}
是的,我所做的是使用firebase身份验证,我所能做的是只允许经过身份验证的用户通过,因为我不认证任何人,或者我只能让我的gmail通过,这非常好!