Google cloud firestore Firestore安全规则-是否通配符集合名称?

Google cloud firestore Firestore安全规则-是否通配符集合名称?,google-cloud-firestore,firebase-security,Google Cloud Firestore,Firebase Security,我有一组集合,它们的名称都以ABC开头,我想写一条规则,适用于所有集合,而不管ABC后面是什么。比如: match /ABC*/{anyid} { allow read, write; } 这可能吗?在规则控制台中,没有突出显示语法错误,但模拟器不允许我使用以下命令访问表: GET /ABC123/456 有什么想法吗?据我所知,目前无法匹配部分收藏(或文档)名称。这听起来像是一个有趣的功能要求,所以我推荐 同时,我唯一能想到的是匹配所有集合,然后通过以下方式测试路径: resource

我有一组集合,它们的名称都以ABC开头,我想写一条规则,适用于所有集合,而不管ABC后面是什么。比如:

match /ABC*/{anyid} {
  allow read, write;
}
这可能吗?在规则控制台中,没有突出显示语法错误,但模拟器不允许我使用以下命令访问表:

GET /ABC123/456

有什么想法吗?

据我所知,目前无法匹配部分收藏(或文档)名称。这听起来像是一个有趣的功能要求,所以我推荐

同时,我唯一能想到的是匹配所有集合,然后通过以下方式测试路径:

resource[''\uuuu name\uuuu']
表达式返回一个
Path
,该路径可以作为数组索引以获取路径段。它有一个表单
/databases/(default)/documents/collection/document
,因此子集合位于索引5处。因为这只是一个字符串,所以我们可以在其上使用
匹配项。在这种情况下,我允许读取名称以ABC开头的任何子集合


更新:事实证明,您也可以简单地访问
col
通配符,而不是从路径中查找。因此,这将起到同样的作用:

allow read: if col.matches('ABC.*')
allow read: if col.matches('ABC.*')