Firestore规则:仅允许用户写入自己的文档和字段

时间:2019-10-10 08:57:35

标签: javascript firebase google-cloud-firestore firebase-security

如何允许用户仅在Firestore中写入自己的文档和字段?


注意!
我已将uid改为电子邮件。


这是我尝试过但无法使用的规则:

 service cloud.firestore {
  match /databases/{database}/documents {

    match /users/request.auth.token.email {
         allow write: if get(path("databases/" + database + "/documents/users/" + request.auth.token.email)).data.uid == request.auth.uid;
    }
  }
}

SEE IMAGE FOR DATABASE HERE

1 个答案:

答案 0 :(得分:1)

已解决! =)

service cloud.firestore {
  match /databases/{database}/documents {
    match /users/{email} {
       allow update, delete: if request.auth.token['email'] == email;
       allow create: if request.auth.uid != null;
    }
  }
}

注意!此规则将不能 FIREBASE SIMULATOR 中进行测试,但是在我的网站上确实可以使用。 >