Firebase:通过电子邮件进行搜索,而不会让用户看到所有用户

时间:2017-11-24 03:16:02

标签: firebase firebase-realtime-database firebase-security

想象一下,我有一个数据库:

emails
 - test1@test.com: userID1
 - test2@test.com: userID2
 - test3@test.com: userID3

如何创建Firebase规则,用户可以搜索该规则以查看是否存在电子邮件地址并随后获取用户ID,但无法查看整个列表?

e.g

/path emails {

   read() { true }, // But will let user view all emails signed up
   write() { writeIfNotExists() }
}

1 个答案:

答案 0 :(得分:1)

用户无法搜索不允许阅读的数据。用户可以读取数据,在这种情况下,他们可以搜索和检索数据,或者他们无法读取数据,在这种情况下,他们既不能检索也不能搜索数据。

如果您想要实现这样的用例,最好的办法是将搜索API实现为HTTP endpoint in Cloud Functions for Firebase