Я, как давний Firebaser, я много читаю, как много.И у меня есть обходной путь для этого, так как там нет встроенного.
Во-первых, если вы предоставляете несколько сеансов для пользователя, вы хотите использовать метод reauthenticate
.
Повторная проверка подлинности пользователя
Некоторые важные для безопасности действия, такие как удаление учетной записи, установка основного адреса электронной почты и изменение пароля, требуют, чтобы пользователь недавно подписалin. Если вы выполните одно из этих действий, а пользователь вошел в систему слишком давно, действие завершится ошибкой с ошибкой FIRAuthErrorCodeCredentialTooOld.Когда это происходит, повторно аутентифицируйте пользователя, получая новые учетные данные от пользователя и передавая учетные данные для повторной аутентификации.Например:
let user = Auth.auth().currentUser
var credential: AuthCredential
// Prompt the user to re-provide their sign-in credentials
user?.reauthenticate(with: credential) { error in
if let error = error {
// An error happened.
} else {
// User re-authenticated.
}
}
Используя это, вы получите ошибку 90% процентов времени из-за старых учетных данных.
Или:
(1) В процессе изменения.Установите определенный ключ для пользователя в вашей базе данных в реальном времени или Firestore, (2) Проверьте наличие этого конкретного ключа в вашем приложении, если оно существует.Это означает, что пользователь должен быть повторно аутентифицирован.Firebase будет обновлять учетные данные пользователя при каждом новом входе в систему.
Надеюсь, это поможет.Вот документы:
Управление пользователями в Firebase