2017-12-09 36 views
0

firebase auth(firestoreデータベース)を使用するが、facebookのログインのみを使用するアプリケーションを構築しています。FIRAuthErrorDomainコード= 17014 firebase authから削除するとエラーが発生します。b/cはiOSアプリケーションに再ログインしません(swift)。

ユーザーのみ、彼らは私が

if Auth.auth().currentUser != nil 
{ 


} 

をチェックアプリを開くために継続し、ユーザーにあっログインしている場合ので、すでに、私は作成しないとき、私のアプリで、その後からに一度ログインする必要がありますそれらは再ログインする。

しかし、彼らは、エラーメッセージがポップアップ表示アプリから自分のアカウントを削除したいとき:

Error Domain=FIRAuthErrorDomain Code=17014 "This operation is sensitive and requires recent authentication. Log in again before retrying this request." UserInfo={NSLocalizedDescription=This operation is sensitive and requires recent authentication. Log in again before retrying this request., error_name=ERROR_REQUIRES_RECENT_LOGIN} 

私は本当に再びログインするユーザーを取得する必要がありますか?それは、私がfacebookで再ログインして、fbのページに戻ってアカウントを削除できるようにしなければならないということです。ログインを確認するために戻すことができるトークンはありますか?

これは、おそらく別の質問です...しかし、何のユーザーが、私はクライアント

認証に座ってアプリからかなり確信しているシステムにそこに残さなかったので、私はfirebaseコンソールから直接ユーザーを削除したとき。 auth()。currentUserはnilではなく、削除したユーザーアカウントのuidを含んでいます。なぜそれが完全にはわからない。

ありがとうございました。

答えて

1

これはセキュリティ上の理由から行われます。再認証は機密性の高い操作です。パスワードを更新する場合(古いものを入力する必要がある場合)、電子メールを更新する、クレジットカードを更新する、電子商取引アプリケーションの配送先住所などを変更する場合と同じです。便利ではない場合がありますが、ユーザーのセキュリティ。 良い習慣のために、これを強制する必要があります。あなたは、サーバーからユーザーを削除する必要がある場合は、あなたが常に管理SDK admin.auth().deleteUser(uid) APIを使用することができますhttps://firebase.google.com/docs/auth/admin/manage-users#delete_a_user

を別々に、あなたはどちらかreloadにユーザーが必要とするか、または削除を検出することを強制するためにトークンgetIDTokenをリフレッシュしてみてくださいユーザーの

関連する問題