无法向Firebase实时数据库添加权限

问题描述 投票:0回答:1

我想添加权限,以便只有经过身份验证的用户才能将数据读/写到我的数据库中。但是我尝试编写不同类型的权限,每次都得到相同的结果。

DatabaseError:权限被拒绝

如果读写设置为true,那么只有我可以读写数据库。

//this works
{
  "rules": {
    ".read": true,
    ".write": true
  }
}

//does not work
{
  "rules": {
    "userdetails":{
      "$user_id":{
    ".read": "$user_id === auth.uid",
    ".write": "$user_id === auth.uid"
      }
    }
  }
}

//this also not works
{
  "rules": {
    ".read": "auth.uid != null",
    ".write": "auth.uid != null"
  }
}

用于输入数据的代码是这里:

String userfirebaseid=FirebaseAuth.getInstance().getCurrentUser().getUid();
reff = FirebaseDatabase.getInstance().getReference().child("userdetails").child((userfirebaseid));

Map setValues = new HashMap();
setValues.put("eMail ID",user_id);
setValues.put("Name",user_name);
setValues.put("Phone Number",phn_no);
reff.setValue(setValues);

我的Firebase数据库

]

请告诉我我在做什么错。

我想添加权限,以便只有经过身份验证的用户才能将数据读/写到我的数据库中。但是我尝试编写不同类型的权限,并且每次都得到相同的结果。 ...

java android firebase firebase-realtime-database firebase-security-rules
1个回答
0
投票

首先使用下面的代码是正确的。

© www.soinside.com 2019 - 2024. All rights reserved.