【发布时间】:2020-10-17 08:54:52
【问题描述】:
我是 Firebase 项目的所有者, 我的DataBase 规则读写设置为true,但我无法在cloudFireStore storage.SHA1 和SHA256 中读取和写入密钥也添加到googleservices.json 文件中,出现Permission Denied 异常。
异常详情:
W/Firestore(12435): (21.3.0) [Firestore]: 侦听查询(users/null/info) 失败:状态{code=PERMISSION_DENIED, description=Missing or enough permissions., cause=null} I/System.out(12435): com.google.firebase.firestore.FirebaseFirestoreException: PERMISSION_DENIED: 权限缺失或不足。
数据库规则代码:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
// This rule allows anyone on the internet to view, edit, and delete
// all data in your Firestore database. It is useful for getting
// started, but it is configured to expire after 30 days because it
// leaves your app open to attackers. At that time, all client
// requests to your Firestore database will be denied.
//
// Make sure to write security rules for your app before that time, or else
// your app will lose access to your Firestore database
match /{document=**} {
allow read, write: if true;
}
任何帮助都会非常有帮助。
【问题讨论】:
-
Firestore 安全规则依赖于服务帐户和 IAM 绑定。如果服务帐户缺少 firebaserules.system 角色,您的安全规则将拒绝所有请求。您可以参考此link 为服务帐户设置 IAM 角色。
-
谢谢,问题已解决
-
为了更好地重用可能对 GCP 社区有所帮助的信息。请帮助投票我添加的答案,谢谢!
标签: firebase flutter dart google-cloud-platform google-cloud-firestore