Firestore规则只允许文档的所有者更新文档,其他人更新某些字段



希望创建一个firestore规则,该规则只允许文档所有者更新它,或者其他用户只更新某些字段。

这是我的规则

match /users/{userID} {
allow update: if request.auth.uid == userID || (request.auth.uid != null && request.resource.data.keys().hasOnly(["field1","field2"]));
}

返回Permission Denied On

await _db.collection("users").doc(userID).update({
"field1": field1,
"field2": field2,
});

请看一下这段代码。它只允许其他人修改字段barfoo

function isOwner() {
return request.auth != null && request.auth.uid == userId;
}
allow update: if isOwner() || resource.data.diff(request.resource.data).affectedKeys().hasOnly(["bar", "foo"]);

最新更新