我的firestore数据结构如下。我有一个例程和一个用户集合。每个常规文档都有一个绑定到用户的uid。尝试设置安全规则,以便用户只能编辑自己的例程和自己的用户详细信息。但是,在这一点上我还是很困。这是我到目前为止的内容。
{routine}.uid
的语法不正确,但是只是为了说明我要做什么。任何帮助,将不胜感激。谢谢!
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /users/{userId} {
allow read, write: if request.auth != null && request.auth.uid == userId;
}
match /routines/{routine} {
allow read, write: if request.auth != null && request.auth.uid == {routine}.uid
}
}
}
答案 0 :(得分:0)
如果您试图使用文档的内容来确定对其的访问,则需要在规则中使用resource
。我强烈建议您阅读documentation。 resource.data
包含受规则保护的文档中字段的映射:
match /routines/{routine} {
allow read, write: if request.auth != null && request.auth.uid == resource.data.uid;
}