Firestore .setData被更新规则禁止创建

时间:2018-07-31 21:04:06

标签: firebase google-cloud-firestore swift4 firebase-security firebase-security-rules

我在Firebase Firestore .set is updating instead of creating (skipping rules)找到了一个类似问题的人,没有答案。

我有一条安全规则,该规则允许任何人在某个路径上创建文档,但仅允许所有者编辑已经存在的文档。更新安全规则阻止了创建。我猜想我对规则的运作方式有误解。如果我删除更新规则,则一切正常。

  match /users_real/{userID} {
    allow create: if true;
    allow read: if isOwner(userID);
    allow update: if ((request.writeFields.size() == 1) && 
    (('ptypes' in request.writeFields) || ('ptypes' in request.writeFields))  && isOwner(userID));           
  }

设置数据:

self.docRef.collection("users_real").document("adfadsf").setData(post) { (error) in

            if let error = error {
                print("He dead!: \(error.localizedDescription)")


            }
            else {
                print("it worked, for now")


            }
        }

0 个答案:

没有答案