私はFirebaseを使用して自分のアプリケーションにログインしますが、電子メールやパスワードなどを管理する機能を追加しています。ドキュメントによれば、ユーザーが最近サインインしていない場合、再認証が必要ですが、私の質問は次のとおりです。ユーザーが最近サインインしたかどうかを確認するにはどうすればよいですか?ドキュメントによると、エラーはFIRAuthErrorCodeCredentialTooOld
を返しますが、これをどのように確認できますか?Firebase認証を使用して再認証する必要があるかどうかを確認する方法
4
A
答えて
0
スウィフト3 私は、ユーザーを削除しようとしたときに、昨日これをしなければなりませんでした。注意が必要なのはFIRAuthErrorCodeCredentialTooOld
です。FIRAuthErrorCode.errorCodeRequiresRecentLogin
私が行ったことは、エラーがスローされた場合にログインの詳細を尋ねるUIView
でした。私は電子メールとパスワードを使用していたので、これは私の例でユーザーから収集したものです。
private func deleteUser() {
//get the current user
guard let currentUser = FIRAuth.auth()?.currentUser else { return }
currentUser.delete { (error) in
if error == nil {
//currentUser is deleted
} else {
//this gets the error code
guard let errorCode = FIRAuthErrorCode(rawValue: error!._code) else { return }
if errorCode == FIRAuthErrorCode.errorCodeRequiresRecentLogin {
//create UIView to get user login information
let loginView = [yourLoginUIViewController]
self.present(loginView, animated: true, completion: nil)
}
}
}
ログイン情報を取得したら、この機能を実行してユーザーを再認証しました。ログインが成功した場合私の場合は、上記のコードでそれをloginView
を走った:私の場合は
func reauthenticateUserWith(email: String, password: String) {
FIRAuth.auth()?.signIn(withEmail: email, password: password) { (user, error) in
if error == nil {
//display UIView to delete user again
let deleteUserView = deleteUserView()
present(deleteUserView, animated: true, completion: nil)
} else {
//handle error
print(error!.localizedDescription)
}
}
}
deleteUserView
は、ユーザからのボタンタップでdeleteUser()
を呼び出します。カスタムUIView
の代わりにUIAlertController
を使用することもできますが、それはあなた次第です。
これが役に立ちます。
関連する問題
- 1. FirebaseユーザーがFacebook認証を使用してサインインしているかどうかを確認する方法
- 2. Firebaseの再認証を使用する
- 3. OAUTHを使用してYouTube認証が機能しているかどうかを確認する方法
- 4. テストプロキシで認証が必要かどうかを確認します
- 5. WiFi認証が失敗したかどうかを確認する方法
- 6. 認証された紹介 - ユーザーが認証されたばかりかどうかを確認する方法
- 7. Firebase refreshTokenを使って再認証する方法は?
- 8. Firebaseでユーザーが初めて認証されたかどうかを確認する方法 - Android
- 9. サイトでフォーム認証が使用されているかどうかを確認する方法
- 10. HttpServlet - SSLクライアント認証が使用されているかどうかを確認する方法
- 11. FireFox認証を迂回するWatiN認証が必要です。
- 12. 他のfirebaseプロジェクトでfirebase認証を使用する方法
- 13. ".txt"ファイルであるかどうかを確認する検証
- 14. web.configの設定に基づいてページに認証が必要かどうかをプログラムで確認する
- 15. SQLServerのインストールを再起動する必要があるかどうか確認
- 16. OAuth2.0認証システムを導入する際に認証が必要ですか?
- 17. windows認証を使用してカスタム認証マネージャーを登録する方法
- 18. ASP.NET Coreサイトの認証を使用してAngular 2 Webアプリケーションを認証する方法はありますか?
- 19. Firebase認証が
- 20. Webアプリケーションでkentor認証サービスを使用して認証する方法
- 21. ユーザーがFirebaseで初めて認証されたかどうかを確認する
- 22. Firebase認証ルールでメールを確認する
- 23. firebaseに対する認証トークンを検証する方法は?
- 24. SleekXMPP-ユーザーが認証されているかどうかを確認する方法?
- 25. リクエストヘッダにnginxの認証が含まれているかどうかを確認する方法
- 26. mvcでリクエストが認証されているかどうかを確認する方法は?
- 27. オフラインデータ認証の明確化が必要
- 28. ユーザーがピラミッドで認証されているかどうかを確認するためのビーカーセッションの使用
- 29. firebaseクエリが空であるかどうかを確認する方法
- 30. Rails:コントローラ認証はセッション認証に必要ですか?