Firebase安全规则限制用户查看自己的数据

时间:2018-08-27 23:53:50

标签: android firebase firebase-realtime-database firebase-security-rules

我的Firebase数据库结构如下:

{
  "accounts" : {
    "API_Keys" : {
      "Unique ID over here" : {
        "api_key" : "None",
      }
    }
  },
  "users" : {
    "Unique UID over here" : {
      "email" : "abc@gmail.com",
      "username": "abc",
      "age": "18"
    },

  }
}

我已经为此实现了以下安全规则。

{
  "rules": {
    "accounts": {
     "API_Keys":{
       "$uid":{
       ".read": "$uid === auth.uid && auth != null ",
       ".write": "$uid === auth.uid && auth != null"
       }

     }
    },
     "users": {
       "$uid":{
       ".read": "$uid === auth.uid && auth != null ",
       ".write": "$uid === auth.uid && auth != null"
       }
    } 
  }
}

用户将链接自己的个人详细信息以及API密钥。不允许任何用户以某种方式访问​​其他任何人的密钥。上述规则是否令人满意?我想念什么吗?

1 个答案:

答案 0 :(得分:0)

对我来说似乎还可以,尽管通常您将测试顺序颠倒为"auth != null && auth.uid == $uid",如documentation所示。您可以使用Firebase控制台中的规则模拟器进行自我测试。