我正在使用 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)