我有一个客户希望能够列出可访问数据的受限电子邮件。因此,任何来到应用程序的人都无法读取/写入任何数据(理想情况下甚至无法登录,但我认为Firebase不可能这样做)。有关如何去做这件事的任何想法?我曾想过收到一系列可接受的电子邮件,并检查他们的电子邮件是否存在于安全规则中,但似乎并不奏效。我在数据库中的以下内容:通过电子邮件限制Firebase用户
"validEmails": ["[email protected]"]
,然后在安全规则:
".read": "root.child('validEmails').val().indexOf(auth.token.email) > -1"
但它看起来就像你不能使用这些安全规则indexOf
。
也许我需要一个可接受的电子邮件列表,然后当用户注册时检查它们是否在列表中并将其UID添加到接受的列表中?我想我可以通过云端功能来做到这一点?
任何帮助将不胜感激。
干杯
“但这似乎并没有工作”这听起来像你已经尝试了一些应该工作。请编辑您的问题以包含[重现您尝试的最小代码](http://stackoverflow.com/help/mcve)。另请参阅此答案为更通用的“按域锁定数据库”https://stackoverflow.com/questions/36943350/how-do-i-lock-down-firebase-database-to-any-user-from-a -specific-email-domain –
对不起弗兰克,我已经更新了这个问题,以反映我尝试过的代码无效。 –