Firebase Auth Inivite Only Scheme:如何向用户传递凭证?

这是我的问题。要访问我们的应用程序,用户必须是邀请。Firebase Auth Inivite Only Scheme:如何向用户传递凭证?

这意味着,我们使用管理网络应用在Firebase中创建用户帐户,并向他发送邀请以下载应用并使用它。

现在下一个阶段,我们如何才能向新创建的用户发送他的凭证?

我们的第一个想法是使用临时密码。我们可以通过电子邮件将密码发送给用户,并要求他在第一次登录时重新定义他的密码。

他这是个好主意吗?我想这不是

有没有更好的方法?

感谢您的帮助。 T

回答:

无法阻止用户使用Firebase身份验证进行身份验证。因此,不要依赖预先创建的帐户,您应该确保只有授权用户才能访问数据。

例如,使用火力地堡数据库时,你可以继续授权用户列表数据库:

/authorizedEmails 

[email protected],com: true

[email protected],com: true

然后你会检查auth.email变量对这个列表中database's security rules。

而不是预先创建帐户,然后您可以简单地通过电子邮件向用户发送邀请到应用程序。例如。带有链接的电子邮件,如http://myapp.mydomain.com/[email protected]

然后,当他们点击该链接时,请使用您发送邮件的电子邮件地址预先填写注册表单,然后拨打createUserWithEmailAndPassword()

回答:

您可以使用新的(截至2016年11月)firebase-admin库(Java或节点)以编程方式从您的服务器端创建用户 - see this link for details。

之后,您可以通过电子邮件向用户发送电子邮件和密码,并且只允许email based password logins。不幸的是,您不能强迫不请自来的人停止使用您的应用进行身份验证,因为您可以手动调用用于创建新帐户的API,就像您在同一页面上看到的那样。但是,您没有义务通过您的用户界面提供登录机制。他们将不得不使用他们的浏览器来输入和调用创建帐户所需的JS。

如果您对强制创建帐户的人有好处,但您想锁定他们的访问权限,则可以执行与Frank在另一个答案中提到的相似的操作,方法是使用数据库的管理员控制来限制访问您的用户已经在数据库中创建并邀请了一个特殊的标志(只有您可以使用admin SDK进行修改),该标志充当您的应用程序的网关。如果您正确执行安全性,即使可以有效地进行身份验证,也应该阻止那些未被邀请使用该应用程序的人。

以上是 Firebase Auth Inivite Only Scheme:如何向用户传递凭证? 的全部内容, 来源链接: utcz.com/qa/263456.html

回到顶部