Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud firestore Firestore安全规则:检查数组是否包含与用户不同的字符串';身份证_Google Cloud Firestore_Firebase Security - Fatal编程技术网

Google cloud firestore Firestore安全规则:检查数组是否包含与用户不同的字符串';身份证

Google cloud firestore Firestore安全规则:检查数组是否包含与用户不同的字符串';身份证,google-cloud-firestore,firebase-security,Google Cloud Firestore,Firebase Security,我知道如何检查数组是否包含给定字符串(如示例所述)。但我的要求不同:我有一个在服务器端编写的数组updatedByHistoryArray的文档,其中包含更新此类文档的所有用户ID的历史记录,例如[id1,id2,…,idn] 我希望仅当希望删除此文档的用户已专门更新此文档时,才允许对此文档执行删除操作。 因此,例如,如果具有id24的用户想要删除文档,则该文档的updatedByHistoryArray必须是[id24,id24,…,id24] 是否可以在Firestore的安全规则中实现此要

我知道如何检查数组是否包含给定字符串(如示例所述)。但我的要求不同:我有一个在服务器端编写的数组updatedByHistoryArray的文档,其中包含更新此类文档的所有用户ID的历史记录,例如[id1,id2,…,idn]

我希望仅当希望删除此文档的用户已专门更新此文档时,才允许对此文档执行删除操作。 因此,例如,如果具有id24的用户想要删除文档,则该文档的updatedByHistoryArray必须是[id24,id24,…,id24]


是否可以在Firestore的安全规则中实现此要求?

听起来可能。尝试使用查看列表字段是否仅包含单个用户ID

resource.data.updatedByHistoryArray.hasOnly([request.auth.uid])