【问题标题】:How to delete firebase Authentication Users from Android App?如何从 Android 应用程序中删除 Firebase 身份验证用户?
【发布时间】:2018-05-04 16:15:53
【问题描述】:

Firebase dashboard view here

我需要使用我的移动应用程序从 Firebase 身份验证用户列表中删除用户。认证方式为邮箱和密码认证。

【问题讨论】:

    标签: android firebase firebase-authentication


    【解决方案1】:

    要删除其他用户,您必须使用Firebase Cloud Functions

    Here an example to delete a user with the id.

    admin.auth().deleteUser(uid)
    .then(function() {
        console.log("Successfully deleted user");
    })
    .catch(function(error) {
        console.log("Error deleting user:", error);
    });
    

    (您必须以管理员身份登录)

    然后你可以创建一个HTTP Trigger来调用这个带参数的函数。

    【讨论】:

    • 您好,您能否详细解释一下,我正在尝试删除所有用户帐户,但是这个云功能真的让我很困惑。我正在构建一个带有本机反应的手机,我启用了云功能。我查看了文档,发现我可以获取所有用户`https://firebase.google.com/docs/auth/admin/manage-users#list_all_users,然后我可以将你编写的函数放入其中,但不知道如何触发!
    • @Yasir Umh 我不知道如何更清楚,在您的 Firebase Cloud Functions 中添加一个 HTTP 触发器,循环所有用户并一一删除。
    【解决方案2】:

    Firebase Admin SDK 允许通过 uid 删除现有用户: 供参考:Check this link

    FirebaseAuth.getInstance().deleteUserAsync(uid).get();
    System.out.println("Successfully deleted user.");
    

    对于应用程序,您可以创建将在服务器上调用此块的 API。例如deleteUserCall() 将电子邮件或用户 ID 作为参数,在服务器端针对该用户 ID,您可以删除该用户

    【讨论】:

    • Android 应用可以安装 Admin SDK 吗?也许这段代码应该在服务器端实现。
    • 是的,对于android,他需要创建API来调用将从后端调用上面的代码!
    • 有没有办法在不创建 API 调用的情况下做到这一点。因为我只使用 Firebase 后端来开发它。
    【解决方案3】:

    如果要允许应用程序在控制台中删除用户,没有纯client-side 解决方案。据我所知,有两种选择。

    1. 用户 Firebase cloud function 在 Firebase 数据库发生特定事件时删除用户。
    2. 使用Admin SDK 创建后端并为用户构建端点以调用操作用户数据。

    【讨论】:

    • 不是当前用户。我想授予用户管理员访问权限,以便管理员也可以删除其他用户。
    • 所以没有其他方法可以使用android。谢谢
    猜你喜欢
    • 2021-02-28
    • 2017-11-27
    • 1970-01-01
    • 2017-04-11
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 2016-11-02
    相关资源
    最近更新 更多