繁体   English   中英

Flutter 尽管有规则,但 Firestore 权限被拒绝

[英]Flutter Firestore permission denied despite the rule

我的规则如下:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
  

     match /classifiedAds/{uid}/{document=**} {
       allow read, create: if true; 
       allow update, delete: if request.auth.uid == document.ownerId;  
    }

当我更新文档时,我得到:

i/flutter (32578): [cloud_firestore/permission-denied] 调用者没有执行指定操作的权限。

这让我感到困惑,因为我已经检查过 auth 用户确实匹配文档的ownerId属性。

好吧,我的错。 您可以通过resource.data.<property>参考文档属性:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
  

     match /classifiedAds/{uid}/{document=**} {
       allow read, create: if true; 
       allow update, delete: if request.auth.uid == request.data.ownerId;  
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM