フィードバックを送信
Firebase Apple プラットフォームの Auth エラーの処理
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Authentication メソッドに対する完了コールバックが nil 以外の NSError
引数を受信した場合は、エラーが発生しています。本番環境のコードの適切なエラー処理ロジックにディスパッチするには、次に示す、一般的なエラーとメソッド別のエラーに対するエラーコードをご確認ください。
エラーの中には、特定のユーザー操作によって解決できるものがあります。たとえば、FIRAuthErrorCodeUserTokenExpired
はユーザーが再度ログインすることで解決でき、FIRAuthErrorCodeWrongPassword
はユーザーに正しいパスワードを入力してもらうことで解決できます。
FIRAuthErrorCodeNetworkError
と FIRAuthErrorCodeTooManyRequests
の場合を除き、失敗したオペレーションを同じ引数で再試行しても成功することはありません。サーバー側でオペレーションが行われたかどうかは仮定しないでください。
エラーを調べたり、ログに記録したりする場合は、userInfo
辞書をご確認ください。FIRAuthErrorNameKey
には、エラーを識別するために使用できる、プラットフォーム間で共通のエラー名の文字列が含まれています。NSLocalizedDescriptionKey
にはエラーの説明が含まれます。この説明はデベロッパー向けのもので、ユーザー向けではありません。NSUnderlyingErrorKey
には、発生したエラーの原因となったエラーが含まれます(原因となったエラーが存在する場合)。
上記の主要フィールドに加えて、userInfo
辞書には、エラーの診断に役立つ他のフィールドが含まれる場合もあります。
すべての API メソッドに共通のエラーコード
コード
意味
FIRAuthErrorCodeNetworkError
オペレーション中にネットワーク エラーが発生したことを示します。
FIRAuthErrorCodeUserNotFound
ユーザー アカウントが見つからなかったことを示します。このエラーは、ユーザー アカウントが削除されている場合に発生することがあります。
FIRAuthErrorCodeUserTokenExpired
現在ログインしているユーザーのトークンが期限切れになったことを示します。たとえば、ユーザーが別の端末でアカウントのパスワードを変更した場合などです。ユーザーにこの端末で再度ログインするように求める必要があります。
FIRAuthErrorCodeTooManyRequests
呼び出し元の端末から Firebase Authentication サーバーに異常な数のリクエストが行われた後で、リクエストがブロックされたことを示します。しばらくしてからもう一度お試しください。
FIRAuthErrorCodeInvalidAPIKey
アプリに無効な API キーが設定されていることを示します。
FIRAuthErrorCodeAppNotAuthorized
アプリが、提供された API キーによる Firebase Authentication の使用を承認されていないことを示します。Google API Console にアクセスし、[認証情報] タブで、使用している API キーのホワイトリストにアプリのバンドル ID が登録されていることをご確認ください。
FIRAuthErrorCodeKeychainError
キーチェーンへのアクセス時にエラーが発生したことを示します。NSError.userInfo
辞書の NSLocalizedFailureReasonErrorKey
フィールドと NSUnderlyingErrorKey
フィールドに、発生したエラーの詳細が含まれています。
FIRAuthErrorCodeInternalError
内部エラーが発生したことを示します。NSError
オブジェクト全体を使用してエラーを報告 してください。
メソッド別のエラーコード
FIRAuth
fetchProvidersForEmail:completion:
コード
意味
FIRAuthErrorCodeInvalidEmail
メールアドレスの形式が正しくないことを示します。
signInWithEmail:password:completion:
コード
意味
FIRAuthErrorCodeOperationNotAllowed
メールアドレスとパスワードを使用するアカウントが有効になっていないことを示します。Firebase コンソール の [Authentication] で有効にしてください。
FIRAuthErrorCodeInvalidEmail
メールアドレスの形式が正しくないことを示します。
FIRAuthErrorCodeUserDisabled
ユーザーのアカウントが無効になっていることを示します。
FIRAuthErrorCodeWrongPassword
ユーザーが間違ったパスワードでログインしようとしたことを示します。
signInWithCredential:completion:
コード
意味
FIRAuthErrorCodeInvalidCredential
提供された認証情報が無効であることを示します。このエラーは、認証情報の有効期限が切れていたり、形式が正しくない場合に発生することがあります。
FIRAuthErrorCodeInvalidEmail
認証情報のタイプが EmailPasswordAuthCredential
の場合に、メールアドレスの形式が正しくないことを示します。
FIRAuthErrorCodeOperationNotAllowed
認証情報が表す ID プロバイダを使用するアカウントが有効になっていないことを示します。Firebase コンソール の [Authentication] で有効にしてください。
FIRAuthErrorCodeEmailAlreadyInUse
認証情報が表すメールアドレス(Facebook アクセス トークンに含まれるメールアドレスなど)が既存のアカウントですでに使用されており、このログイン方法では認証できないことを示します。このユーザーのメールアドレスに対して fetchProvidersForEmail
を呼び出し、返されるいずれかのログイン プロバイダを使用してログインするようユーザーに求めてください。このエラーは、Firebase コンソール の [Authentication ] 設定で [1 つのメールアドレスにつき 1 つのアカウント] が有効になっている場合にのみスローされます。
FIRAuthErrorCodeUserDisabled
ユーザーのアカウントが無効になっていることを示します。
FIRAuthErrorCodeWrongPassword
認証情報のタイプが EmailPasswordAuthCredential
の場合に、ユーザーが間違ったパスワードでログインしようとしたことを示します。
signInAnonymouslyWithCompletion:
コード
意味
FIRAuthErrorCodeOperationNotAllowed
匿名アカウントが有効になっていないことを示します。Firebase コンソール の [Authentication] で有効にしてください。
signInWithCustomToken:completion:
コード
意味
FIRAuthErrorCodeInvalidCustomToken
カスタム トークンに検証エラーがあることを示します。
FIRAuthErrorCodeCustomTokenMismatch
サービス アカウントと API キーが、異なるプロジェクトに属していることを示します。
createUserWithEmail:password:completion:
コード
意味
FIRAuthErrorCodeInvalidEmail
メールアドレスの形式が正しくないことを示します。
FIRAuthErrorCodeEmailAlreadyInUse
登録に使用されたメールアドレスがすでに存在することを示します。fetchProvidersForEmail
を呼び出してそのユーザーが使用したログイン方法を確認し、そのいずれかの方法を使用してログインするようユーザーに求めてください。
FIRAuthErrorCodeOperationNotAllowed
メールアドレスとパスワードを使用するアカウントが有効になっていないことを示します。Firebase コンソール の [Authentication ] で有効にしてください。
FIRAuthErrorCodeWeakPassword
設定しようとしたパスワードが弱すぎると判断されたことを示します。NSError.userInfo
辞書オブジェクトの NSLocalizedFailureReasonErrorKey
フィールドに、ユーザーに表示できる詳細な説明が含まれています。
signOut:
コード
意味
FIRAuthErrorCodeKeychainError
キーチェーンへのアクセス時にエラーが発生したことを示します。NSError.userInfo
辞書の NSLocalizedFailureReasonErrorKey
フィールドと NSUnderlyingErrorKey
フィールドに、発生したエラーの詳細が含まれています。
FIRUser
FIRUser オペレーションに共通のエラー
コード
意味
FIRAuthErrorCodeInvalidUserToken
セッション情報が保持されている、ログイン済みユーザーの更新トークンが無効であることを示します。ユーザーにこの端末で再度ログインするように求める必要があります。
FIRAuthErrorCodeUserDisabled
ユーザーのアカウントが無効になっており、Firebase コンソールの [ユーザー] パネル内で再度有効にされるまで使用できないことを示します。
reauthenticateWithCredential:completion:
コード
意味
FIRAuthErrorCodeInvalidCredential
提供された認証情報が無効であることを示します。このエラーは、認証情報の有効期限が切れていたり、形式が正しくない場合に発生することがあります。
FIRAuthErrorCodeInvalidEmail
認証情報のタイプが EmailPasswordAuthCredential
の場合に、メールアドレスの形式が正しくないことを示します。
FIRAuthErrorCodeWrongPassword
認証情報のタイプが EmailPasswordAuthCredential
の場合に、ユーザーが間違ったパスワードで再認証しようとしたことを示します。
FIRAuthErrorCodeUserMismatch
現在ログインしているユーザーではないユーザーで再認証が試みられたことを示します。
FIRAuthErrorCodeOperationNotAllowed
認証情報が表す ID プロバイダを使用するアカウントが有効になっていないことを示します。Firebase コンソール の [Authentication] で有効にしてください。
FIRAuthErrorCodeEmailAlreadyInUse
認証情報が表すメール(Facebook アクセス トークンに含まれるメールなど)が既存のアカウントですでに使用されており、このログイン方法では再認証できないことを示します。このユーザーのメールアドレスに対して fetchProvidersForEmail
を呼び出し、返されるいずれかのログイン プロバイダを使用してログインするようユーザーに求めてください。このエラーは、Firebase コンソール の [Authentication ] 設定で [1 つのメールアドレスにつき 1 つのアカウント] が有効になっている場合にのみスローされます。
FIRAuthErrorCodeUserDisabled
ユーザーのアカウントが無効になっていることを示します。
updateEmail:completion:
コード
意味
FIRAuthErrorCodeEmailAlreadyInUse
メールアドレスが別のアカウントですでに使用されていることを示します。
FIRAuthErrorCodeInvalidEmail
メールアドレスの形式が正しくないことを示します。
FIRAuthErrorCodeRequiresRecentLogin
ユーザーのメールアドレスの更新はセキュリティ上重要なオペレーションで、ユーザーが最近ログインしている必要があります。このエラーは、ユーザーがログインした時期が古いことを示しています。解決するには、FIRUser
で reauthenticateWithCredential:completion:
を呼び出して、ユーザーを再認証してください。
updatePassword:completion:
コード
意味
FIRAuthErrorCodeOperationNotAllowed
指定された ID プロバイダによるログインを管理者が無効にしたことを示します。
FIRAuthErrorCodeRequiresRecentLogin
ユーザーのパスワードの更新はセキュリティ上重要なオペレーションで、ユーザーが最近ログインしている必要があります。このエラーは、ユーザーがログインした時期が古いことを示しています。解決するには、FIRUser
で reauthenticateWithCredential:completion:
を呼び出して、ユーザーを再認証してください。
FIRAuthErrorCodeWeakPassword
設定しようとしたパスワードが弱すぎると判断されたことを示します。NSError.userInfo
辞書オブジェクトの NSLocalizedFailureReasonErrorKey
フィールドに、ユーザーに表示できる詳細な説明が含まれています。
linkWithCredential:completion:
コード
意味
FIRAuthErrorCodeProviderAlreadyLinked
このアカウントにすでにリンクされているタイプのプロバイダをリンクしようとしたことを示します。
FIRAuthErrorCodeCredentialAlreadyInUse
別の Firebase アカウントにすでにリンクされている認証情報にリンクしようとしたことを示します。
FIRAuthErrorCodeOperationNotAllowed
認証情報が表す ID プロバイダを使用するアカウントが有効になっていないことを示します。Firebase コンソール の [Authentication] で有効にしてください。
このメソッドでは FIRUser
の updateEmail:completion:
と updatePassword:completion:
に関連付けられたエラーコードが返されることもあります。
unlinkFromProvider:completion:
コード
意味
FIRAuthErrorCodeNoSuchProvider
アカウントにリンクされていないプロバイダのリンクを解除しようとしたことを示します。
FIRAuthErrorCodeRequiresRecentLogin
メールアドレスの更新はセキュリティ上重要なオペレーションで、ユーザーが最近ログインしている必要があります。このエラーは、ユーザーがログインした時期が古いことを示しています。解決するには、FIRUser
で reauthenticateWithCredential:completion:
を呼び出して、ユーザーを再認証してください。
sendEmailVerificationWithCompletion:
コード
意味
FIRAuthErrorCodeUserNotFound
ユーザー アカウントが見つからなかったことを示します。
deleteWithCompletion:
コード
意味
FIRAuthErrorCodeRequiresRecentLogin
ユーザー アカウントの削除はセキュリティ上重要なオペレーションで、ユーザーが最近ログインしている必要があります。このエラーは、ユーザーがログインした時期が古いことを示しています。解決するには、FIRUser
で reauthenticateWithCredential:completion:
を呼び出して、ユーザーを再認証してください。
フィードバックを送信
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス により使用許諾されます。コードサンプルは Apache 2.0 ライセンス により使用許諾されます。詳しくは、Google Developers サイトのポリシー をご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-09-30 UTC。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"必要な情報がない"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"複雑すぎる / 手順が多すぎる"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"最新ではない"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"サンプル / コードに問題がある"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]
ご意見をお聞かせください
{"lastModified": "\u6700\u7d42\u66f4\u65b0\u65e5 2024-09-30 UTC\u3002"}
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2024-09-30 UTC。"]]