小编Yin*_*non的帖子

如何编写 firebase 规则以仅允许读取集合/文档的一部分?

我正在使用 firebase (firestore) 开发一个网站,该网站向基于角色的用户显示文章。

所以数据库保存了文章的集合

qlt0mPbTBt1rQcrx1HJR: {
    title: 'Article 1'
    description: 'Lorem ipsum, dolor sit amet consectetur adipisicing elit.'
    secretInfo: 'secret text for partners only...'
},
lrTk2ybMLiDuUw6pcwll: {
    title: 'Article 2'
    description: 'Lorem ipsum, dolor sit amet consectetur adipisicing elit.'
    secretInfo: 'secret text for partners only...'
}
Run Code Online (Sandbox Code Playgroud)

部分文章字段是公开的(例如标题/描述),应该由所有用户查看,同一文章的其他一些字段(例如 secretInfo)是私有的,只能由具有特权角色的特定用户(合作伙伴/管理员等)查看'……)。

我知道可以根据特定规则“允许读取”来自 firebase 的集合/文档 - 正如他们的文档中所描述的那样

service cloud.firestore {
  match /databases/{database}/documents {
      // Only the authenticated user who authored the document can read or write
      allow read, write: if request.auth.uid == resource.data.author; …
Run Code Online (Sandbox Code Playgroud)

javascript firebase google-cloud-firestore

3
推荐指数
1
解决办法
1060
查看次数