如果我的应用的用户执行了一些不需要的操作,他的帐户可能会被版主禁用。 但是,即使被禁用,如果他已经登录,他也可以使用该应用程序。我该如何防止这种情况发生?
我用来禁用用户的代码位于 Cloud Functions 中并使用以下内容:
admin.auth().updateUser(uid, {
disabled: true
});
答案 0 :(得分:1)
禁用用户帐户可防止他们将来登录应用,并防止其 ID 令牌被刷新。但他们当前的 ID 令牌仍然有效长达一个小时。
要检测用户帐户的禁用情况,您可以将他们的 ID 令牌添加到阻止列表并对照该列表进行检查。您通常会在安全规则、服务器端代码和(为了更好的衡量)客户端中执行此操作。有关这方面的更多信息,请参阅 detecting ID token revocation 上的 Firebase 文档。