哪些Flutter Firebase Auth操作会触发'requires-recent-login'错误?
Flutter中Firebase Auth触发'requires-recent-login'错误的操作清单
以下是Flutter集成Firebase Auth时,会触发requires-recent-login错误的具体操作:
- 修改用户邮箱:调用
FirebaseAuth.instance.currentUser?.updateEmail(newEmail),当用户登录状态超过默认有效期(通常1小时)时触发。 - 修改用户密码:调用
FirebaseAuth.instance.currentUser?.updatePassword(newPassword),需用户近期完成登录验证,否则报错。 - 删除用户账户:调用
FirebaseAuth.instance.currentUser?.delete(),必须验证用户处于近期登录状态,否则触发错误。 - 更新用户手机号:调用
FirebaseAuth.instance.currentUser?.updatePhoneNumber(credential)(credential为手机号验证后的凭证),需用户近期登录。 - 关联额外身份提供商:调用
FirebaseAuth.instance.currentUser?.linkWithCredential(credential)将当前用户关联到其他登录方式(如Google、Facebook),登录状态过久时会触发该错误。
补充说明
这类操作均属于Firebase Auth定义的高风险操作,默认要求用户在最近1小时内完成过登录验证,确保操作是账户本人执行。遇到该错误时,需引导用户通过reauthenticateWithCredential方法重新验证身份后,再执行目标操作。
内容的提问来源于stack exchange,提问作者devblock
相关产品推荐
相关产品推荐

