用于 createUserWithEmailAndPassword 的 Firebase 和验证码

Firebase & Captcha for createUserWithEmailAndPassword

我正在处理另一个不需要后端的客户项目。我想使用 Firebase,因为它可以满足我们的所有需求,而且事实上我们已经构建了大部分微型网站。

我们不想要求我们的用户输入电子邮件,因为我们认为它会泄露太多可识别的信息。相反,我们所做的是在注册和登录时分配 @users.ourdomain.com 电子邮件 如果 用户不想提供自己的电子邮件地址并或多或少地保持匿名但如果需要,仍然可以再次访问该站点及其数据。微型网站是一次性体验(如果您向朋友展示,可能是两次),一年后没有人会忘记密码回来,所以这与这种情况无关。

我意识到没有办法完全保护 createUserWithEmailAndPassword 功能,因为任何人都可以向它发送垃圾邮件并创建大量帐户并用尽所有用户名或电子邮件。有没有办法在不为 Firebase 实现单独的后端/令牌身份验证的情况下合并类似验证码的系统?

我现在能想到的唯一解决方案是启动 AWS Lambda 来处理验证码和标记。但当然,任何消除后端必要性的解决方案都更可取。其他人 运行 以前有过类似的问题吗?如果是这样,您最终是如何解决的?

非常感谢您的宝贵时间,编码愉快。

Firebase Authentication 支持its documentation. There is no built-in captcha support for its email+password provider. But to be honest, it sounds like you could reach most of your stated goals with anonymous authentication中列出的身份验证提供程序,这样会简单很多。

除此之外,您似乎担心创建恶意用户。虽然这绝对是可能的,但它对设计良好的应用程序没有影响。身份验证(知道你就是你)对授权(你被允许做什么)没有影响。有关该主题的良好答案,请参阅 How to prevent other access to my firebase