【发布时间】:2020-12-20 20:40:21
【问题描述】:
由于 firebase 已弃用 firebase 邀请,使用 vue + firebase 创建安全邀请系统的最佳方法是什么?
在 firebase 身份验证之上,假设我们有 2 个 firestore 表:
-
users包含用户 ID 和项目特定数据 -
projects,其中每个集合都包含项目特定数据和角色映射,将 firebase 用户 ID 映射到其权限,例如。{"rf276ft87gsa7vgwv":"owner"}
然后我们可以在 firestore 中设置规则,以便只有在字典中具有正确角色的经过身份验证的用户才能读取/写入 projects 集合中的给定文档。
在我看来,没有办法安全地实施邀请系统,假设一切都在客户端运行。特别是,必须将新用户插入到projects 表中,这意味着任何已登录的用户都将拥有任何项目的编辑权限。
我看到的唯一选项似乎是一种解决方法:作为已登录的项目所有者,使用 fb.auth.createUserWithEmailAndPassword() 为要邀请的电子邮件创建一个帐户,然后使用密码恢复。
【问题讨论】:
标签: vue.js google-cloud-firestore firebase-authentication