提问者:小点点

创建admin firebase android的重置密码


我有帐户管理员和另一个帐户想要重置密码,

用户A重置密码>; 向管理员发送电子邮件>; 管理员重置密码>; admin将新密码发送给用户A(使用电子邮件)>; 使用管理员提供的新密码登录。 我可以这样做,告诉我示例源代码Java。 谢谢

resetPass.setOnClickListener(view -> {
    String userMail = resetEmail.getText().toString();
    if (TextUtils.isEmpty(userMail)) {
        Toast.makeText(ForgotPassActivity.this, "Please write your valid address first", Toast.LENGTH_SHORT).show();
    } 
    else {
        auth.sendPasswordResetEmail(userMail).addOnCompleteListener(new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                if (task.isSuccessful()) {
                    Toast.makeText(ForgotPassActivity.this, "Please check your email account", Toast.LENGTH_SHORT).show();

                    startActivity(new Intent(ForgotPassActivity.this, Log_inActivity.class));
                } else {
                    Toast.makeText(ForgotPassActivity.this, "Email not found, please try again.", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
});

共1个答案

匿名用户

Firebase身份验证只允许向当前登录的用户发送密码重置电子邮件。 你不能发送一个密码重置电子邮件给另一个用户,因为这将打开系统被滥用。

要实现您描述的流程,您需要实现您自己的电子邮件发送和密码重置。 您可以使用Firebase Admin SDK来处理它的Firebase方面(获取用户,更新密码),但将需要找到另一个系统来发送电子邮件,并实现您自己的验证代码。