【发布时间】:2020-09-06 08:50:23
【问题描述】:
我正在尝试从我的 Firestore 数据库中获取数据。我做了以下事情:
Firestore.instance.collection('highScore').document('gGSIHVzDIjX1UCq7Pk8q').get().then((DocumentSnapshot ds) {
print(ds);
});
运行此行时出现以下错误:PERMISSION_DENIED: Missing or enough permissions。
我尝试将 Firestore 规则修改为:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, update, delete: if request.auth.uid == resource.data.uid;
allow create: if request.auth.uid != null;
}
}
}
但我仍然遇到同样的错误。我做错了什么,我该如何解决?
【问题讨论】:
-
为什么你认为这个规则应该允许对文档的读取权限?也就是说,登录用户的 UID 必须有一个名为“uid”的字段,其值相同。您是否验证过这种情况?你能拿出证据证明这些事情是真的吗?
-
@DougStevenson 感谢您的回复。我实际上是 firebase 的新手,所以我只是从 StackOverflow 中尝试了不同的东西。我希望任何人都有权读写和更新
-
@DougStevenson 感谢您的回复。我实际上是 firebase 的新手,所以我只是从 StackOverflow 中尝试了不同的东西。我希望任何人都有权读写和更新
-
您能否解释一下您希望为 Cloud Firestore 安全规则申请哪些条件?
标签: firebase flutter google-cloud-firestore firebase-security