The error thrown when the user needs to provide a second factor to sign in
successfully.
The error code for this error is auth/multi-factor-auth-required.
This error provides a firebase.auth.MultiFactorResolver object,
which you can use to get the second sign-in factor from the user.
example
firebase.auth().signInWithEmailAndPassword()
.then(function(result) {
// User signed in. No 2nd factor challenge is needed.
})
.catch(function(error) {
if (error.code == 'auth/multi-factor-auth-required') {
var resolver = error.resolver;
var multiFactorHints = resolver.hints;
} else {
// Handle other errors.
}
});
resolver.resolveSignIn(multiFactorAssertion)
.then(function(userCredential) {
// User signed in.
});
The multi-factor resolver to complete second factor sign-in.
Optional tenantId
tenantId:string
The tenant ID being used for sign-in/linking. If you use
firebase.auth.Auth.signInWithRedirect to sign in, you have to
set the tenant ID on Auth instanace again as the tenant ID is not
persisted after redirection.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2022-07-27 UTC."],[],[],null,["- [firebase](/docs/reference/node/firebase).\n- [auth](/docs/reference/node/firebase.auth).\n- MultiFactorError \nThe error thrown when the user needs to provide a second factor to sign in\nsuccessfully.\nThe error code for this error is `auth/multi-factor-auth-required`.\nThis error provides a [firebase.auth.MultiFactorResolver](/docs/reference/node/firebase.auth.multifactorresolver) object,\nwhich you can use to get the second sign-in factor from the user.\n\nexample\n:\n\n firebase.auth().signInWithEmailAndPassword()\n .then(function(result) {\n // User signed in. No 2nd factor challenge is needed.\n })\n .catch(function(error) {\n if (error.code == 'auth/multi-factor-auth-required') {\n var resolver = error.resolver;\n var multiFactorHints = resolver.hints;\n } else {\n // Handle other errors.\n }\n });\n\n resolver.resolveSignIn(multiFactorAssertion)\n .then(function(userCredential) {\n // User signed in.\n });\n\n\nIndex\n\nProperties\n\n- [code](/docs/reference/node/firebase.auth.multifactorerror#code)\n- [credential](/docs/reference/node/firebase.auth.multifactorerror#credential)\n- [email](/docs/reference/node/firebase.auth.multifactorerror#email)\n- [message](/docs/reference/node/firebase.auth.multifactorerror#message)\n- [name](/docs/reference/node/firebase.auth.multifactorerror#name)\n- [phoneNumber](/docs/reference/node/firebase.auth.multifactorerror#phonenumber)\n- [resolver](/docs/reference/node/firebase.auth.multifactorerror#resolver)\n- [tenantId](/docs/reference/node/firebase.auth.multifactorerror#tenantid)\n\nProperties\n\ncode \ncode: string\nInherited from [Error](/docs/reference/node/firebase.auth.Error).[code](/docs/reference/node/firebase.auth.Error#code) \nUnique error code.\n\nOptional credential \ncredential: [AuthCredential](/docs/reference/node/firebase.auth.AuthCredential)\nInherited from [AuthError](/docs/reference/node/firebase.auth.AuthError).[credential](/docs/reference/node/firebase.auth.AuthError#credential) \nThe [firebase.auth.AuthCredential](/docs/reference/node/firebase.auth.AuthCredential) that can be used to resolve the\nerror.\n\nOptional email \nemail: string\nInherited from [AuthError](/docs/reference/node/firebase.auth.AuthError).[email](/docs/reference/node/firebase.auth.AuthError#email) \nThe email of the user's account used for sign-in/linking.\n\nmessage \nmessage: string\nInherited from [Error](/docs/reference/node/firebase.auth.Error).[message](/docs/reference/node/firebase.auth.Error#message) \nComplete error message.\n\nname \nname: string\n| Inherited from [Error](/docs/reference/node/firebase.auth.Error).[name](/docs/reference/node/firebase.auth.Error#name)\n\nOptional phoneNumber \nphoneNumber: string\nInherited from [AuthError](/docs/reference/node/firebase.auth.AuthError).[phoneNumber](/docs/reference/node/firebase.auth.AuthError#phonenumber) \nThe phone number of the user's account used for sign-in/linking.\n\nresolver \nresolver: [MultiFactorResolver](/docs/reference/node/firebase.auth.multifactorresolver) \nThe multi-factor resolver to complete second factor sign-in.\n\nOptional tenantId \ntenantId: string\nInherited from [AuthError](/docs/reference/node/firebase.auth.AuthError).[tenantId](/docs/reference/node/firebase.auth.AuthError#tenantid) \nThe tenant ID being used for sign-in/linking. If you use\nfirebase.auth.Auth.signInWithRedirect to sign in, you have to\nset the tenant ID on Auth instanace again as the tenant ID is not\npersisted after redirection."]]
The error thrown when the user needs to provide a second factor to sign in successfully. The error code for this error is
auth/multi-factor-auth-required
. This error provides a firebase.auth.MultiFactorResolver object, which you can use to get the second sign-in factor from the user.firebase.auth().signInWithEmailAndPassword() .then(function(result) { // User signed in. No 2nd factor challenge is needed. }) .catch(function(error) { if (error.code == 'auth/multi-factor-auth-required') { var resolver = error.resolver; var multiFactorHints = resolver.hints; } else { // Handle other errors. } }); resolver.resolveSignIn(multiFactorAssertion) .then(function(userCredential) { // User signed in. });