【问题标题】:firestore : Missing or insufficient permissionsfirestore :权限缺失或不足
【发布时间】:2018-09-12 08:45:37
【问题描述】:

我正在使用角色(允许读取,写入:如果 request.auth.uid != null)当我登录时我得到数据没问题,但是当我注销用户时我得到错误:缺少或权限不足.首先我认为这是因为我没有取消订阅我尝试过的 Observable (rxjs/operator/takeWhile),即使我使用了异步管道,我也得到了同样的错误。

【问题讨论】:

    标签: angular ionic-framework google-cloud-firestore


    【解决方案1】:

    如果您已注销,则 request.auth.id == null,因此,您的读取规则返回 false。 尝试更改为:

    allow read;
    allow create: if request.auth.uid != null; 
    

    这允许任何人读取并且只有经过身份验证的用户才能创建。您通常只希望作者更新。为此,您需要将文档上的作者 uid 保存为 userid 之类的属性,然后您可以像这样更新规则:

    match /myCollection/{document=**} {
      allow read;
      allow create: if request.auth.uid != null; 
      allow update: if isOwner();
    }
    
    function existingData() {
      return resource.data
    }
    
    function isOwner() {
      return request.auth.uid == existingData().userid;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-06
      • 1970-01-01
      • 2019-02-26
      • 2018-04-25
      • 2019-05-05
      • 2022-01-25
      • 2021-08-24
      • 2020-09-01
      相关资源
      最近更新 更多