FirebaseError:[code=permission-denied]:权限缺失或不足。即使允许 firestore 规则读取和写入 - Angular-Fire

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

我在从 Angular Fire 调用 firestore 函数时遇到了这个问题。 当我成功通过身份验证时,我将获取并火存储当前用户文档 ID,以获取与用户关联的其他数据。

 // In App.Component
  ngOnInit(): void {
    this.afAuth.onAuthStateChanged((user) => {
      if (user) {
        // Some firestore call like
        // let p: QuerySnapshot<AppUser> = await this.firestore.collection<AppUser>('users').ref.where('uid', '==', 'myuserid').get(); 
        // --> FirebaseError: [code=permission-denied]: Missing or insufficient permissions.
       }
    });
  }

我不明白,因为我的 firestore 规则是:

rules_version = '2';

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
       allow read, write: if true;
    }
  }
}

因此每个人都可以读写。

我面临这个错误,因为我已经按照 Firebase 控制台“AppCheck”的建议强制执行了安全性,现在,据我记得,只接受特定的应用程序并且我已经解决了 recaptcha,所以发生这种情况是因为缺少 recaptcha 配置在我的应用程序中?或者也许它不相关? https://firebase.google.com/docs/app-check/web/recaptcha-provider

firebase google-cloud-firestore angularfire2
1个回答
0
投票

按照这些步骤,事情就成功了:

所以规则还不够,在我的情况下需要正确配置 AppCheck

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