首页 > 解决方案 > 哪个更安全 - 使用 Firebase auth.createUserWithEmailAndPassword() 还是使用云功能?

问题描述

我正在构建一个专注于群聊的社交媒体应用程序。我正在创建一个新用户。Firestore 提供了这个函数来开始从客户端创建用户的过程:

auth.createUserWithEmailAndPassword

但是,我读到尝试最小化客户端的内容并在服务器端完成应用程序的大部分工作会更安全。我应该使用上面的函数(在客户端上)还是应该创建一个自定义函数,将电子邮件和密码传递到服务器并在那里创建用户?

标签: firebasefirebase-authentication

解决方案


首先,auth.createUserWithEmailAndPassword它不是 Firestore 方法。这是一种Firebase 身份验证方法。Firestore 是一个数据库,Firebase Auth 是一个身份验证服务。最好不要混淆他们的职责。

实际上,您提出的选项在安全性方面没有任何不同。这是因为如果您为项目启用了电子邮件和密码身份验证, Firebase 身份验证服务提供了一个公共 REST API来创建可供全世界访问的新用户帐户。如果您从前端或后端调用它并不重要 - 最终结果是相同的。

做任何你觉得最方便的事情。Firebase 身份验证旨在让用户可以使用您启用的身份验证提供程序创建自己的帐户。添加另一个后端服务似乎只是增加了更多的工作而没有额外的好处。


推荐阅读