我想通过电子邮件向用户发送一个提交反馈的链接。
链接具有每个用户唯一的访问密钥。
如果访问密钥有效,用户应该能够提交。
这在Firebase上怎么可能?
最简单的方法是:
- 为每个用户生成密钥
- 已经创建了一个以密钥作为文档ID的文档(可能为空(
- 将密钥发送给用户
- 仅允许更新文档(如果该文档已存在(。因此,从细粒度安全规则中允许
update
,但不允许create
- 不允许用户访问集合中的
list
文档,尽管您可以允许他们访问get
文档
在步骤2中,您还可以将目标用户的UID写入文档,并在安全规则中对此进行额外检查。
另请参阅:
*Firestore规则:允许使用密码访问文档