首页 > 解决方案 > Firebase 安全规则如何通配除指定路径之外的所有路径

问题描述

让我们想象一组具有以下字段的规则:

service cloud.firestore {
   match /databases/{database}/documents {
     match /stories/{story} {}
     match /comments/{comment} {}
     match /posts/{post} {}
  }
} 

并且我们想使用来排序的通配符为所有剩余的集合添加一个新的匹配条件。

我怎样才能做到这一点?

标签: firebasegoogle-cloud-firestorefirebase-security

解决方案


我相信这是不可能的。如果您在这样的集合的匹配中使用通配符:

match /{collection}/{doc} { ... }

然后它将匹配所有集合中的所有文档,包括故事、评论和帖子。这肯定不是你想要的。没有办法使用通配符进行子字符串或正则表达式匹配。它始终适用于路径中的整个集合或文档 ID。


推荐阅读