权限被拒绝为Firebase数据库设置值

时间:2017-09-24 18:39:59

标签: ios firebase firebase-realtime-database firebase-security

在我的firebase数据库中,我设置了以下规则:

{
  "rules": {
    "Users": {
      "$uid": {
        ".write": "$uid === auth.uid",
        ".read": "$uid === auth.uid"
      }
    }
  }
}

我正在使用Firebase开发iOS应用。我使用Facebook身份验证登录我的应用程序,我想在登录成功时将用户ID添加到数据库,这是我的代码:

let ref = Database.database().reference()
...
// I got uid 
ref.child("Users").setValue(uid)

但我收到了错误:

setValue: or removeValue: at /users failed: permission_denied

为什么?

1 个答案:

答案 0 :(得分:0)

您无权将值写入/users,因此操作被拒绝。

执行有权将值写入/users/$uid。你可能试图做这样的事情:

ref.child("Users").child(uid).setValue(true)