auth package

Firebase Authentication

Funções

Função Descrição
function(app, ...) (link em inglês)
getAuth(app) (em inglês) Retorna a instância do Auth associada ao FirebaseApp fornecido. Se não houver nenhuma instância, inicializa uma instância do Auth com dependências padrão específicas da plataforma.
inicializarAuth(app, deps) Inicializa uma instância Auth com controle detalhado sobre as Dependências.
function(storage, ...)
getReactNativePersistent(storage) (em inglês) Retorna um objeto de persistência que envolve o AsyncStorage importado de react-native ou @react-native-community/async-storage, e pode ser usado no campo de dependência de persistência em InitializeAuth().
function(auth, ...)
applyActionCode(auth, oobCode) (link em inglês) Aplica um código de verificação enviado ao usuário por e-mail ou outro mecanismo fora de banda.
beforeAuthStateChanged(auth, callback, onAbort) Adiciona um callback de bloqueio executado antes que uma mudança de estado de autenticação defina um novo usuário.
checkActionCode(auth, oobCode) Verifica um código de verificação enviado ao usuário por e-mail ou outro mecanismo fora de banda.
confirmPasswordReset(auth, oobCode, newPassword) Conclui o processo de redefinição de senha com um código de confirmação e uma nova senha.
connectAuthEmulator(auth, url, options) Altera a instância Auth para se comunicar com o emulador do Firebase Auth em vez dos serviços de produção do Firebase Auth.
createUserWithEmailAndPassword(autenticação, e-mail, senha) Cria uma nova conta de usuário associada ao endereço de e-mail e à senha especificados.
fetchSignInMethodsForEmail(auth, email) Extrai a lista de possíveis métodos de login para o endereço de e-mail fornecido. Esse método retorna uma lista vazia quando a Proteção contra enumeração de e-mails está ativada, independentemente do número de métodos de autenticação disponíveis para um determinado e-mail.
getMultiFactorResolver(auth, error) Fornece um MultiFactorResolver adequado para a conclusão de um fluxo de vários fatores.
getRedirectResult(auth, resolvedor) Retorna uma UserCredential do fluxo de login com base em redirecionamento.
inicializarRecaptchaConfig(auth) Carrega a configuração do reCAPTCHA na instância Auth.
isSignInWithEmailLink(auth, emailLink) Verifica se um link recebido é um link de login com e-mail adequado para signInWithEmailLink().
onAuthStateChanged(auth, nextOrObserver, error, completed) Adiciona um observador para alterações no estado de login do usuário.
onIdTokenChanged(auth, nextOrObserver, error, completed). Adiciona um observador para alterações no token de ID do usuário conectado.
revokeAccessToken(auth, token) Revoga o token de acesso fornecido. No momento, só é compatível com tokens de acesso OAuth da Apple.
sendPasswordResetEmail(auth, email, actionCodeSettings) Envia um e-mail de redefinição de senha para o endereço de e-mail fornecido. Esse método não gera um erro quando não há uma conta de usuário com o endereço de e-mail fornecido e a Proteção contra enumeração de e-mails está ativada.
sendSignInLinkToEmail(auth, email, actionCodeSettings) Envia um link de e-mail de login para o usuário com o e-mail especificado.
setPersistent(auth, persistência) Altera o tipo de persistência na instância Auth para a sessão do Auth salva atualmente e aplica esse tipo de persistência nas solicitações de login futuras, incluindo o login com solicitações de redirecionamento.
signInAnonymously(auth) Faz login de forma assíncrona como um usuário anônimo.
signInWithCredential(auth, credentials) Faz login de forma assíncrona com as credenciais fornecidas.
signInWithCustomToken(auth, customToken) Faz login de forma assíncrona usando um token personalizado.
signInWithEmailAndPassword(auth, email, password) Faz login de forma assíncrona usando e-mail e senha.
signInWithEmailLink(auth, email, emailLink) Faz login de forma assíncrona usando um e-mail e um link de e-mail de login.
signInWithNumber(auth, phoneNumber, appVerifier) Faz login de forma assíncrona usando um número de telefone.
signInWithPop(auth, provider, resolvedor) Autentica um cliente do Firebase usando um fluxo de autenticação OAuth baseado em pop-ups.
signInWithRedirect(auth, provider, resolvedor) Autentica um cliente do Firebase usando um fluxo de redirecionamento de página inteira.
signOut(auth) (em inglês) Desconecta o usuário atual.
updateCurrentUser(auth, user) Define de maneira assíncrona o usuário fornecido como Auth.currentUser na instância Auth.
useDeviceLanguage(auth) Define o idioma atual como a preferência padrão de dispositivo/navegador.
validarPassword(auth, senha) Valida a senha em relação à política de senha configurada para o projeto ou locatário.
verifyPasswordResetCode(auth, code) Verifica um código de redefinição de senha enviado ao usuário por e-mail ou outro mecanismo fora de banda.
function(link, ...)
parseActionCodeURL(link) (em inglês) Analisa a string do link de ação de e-mail e retorna um ActionCodeURL se o link for válido. Caso contrário, retorna nulo.
function(user, ...)
deleteUser(usuário) Exclui e desconecta o usuário.
getIdToken(user, forceRefresh) Retorna um JSON Web Token (JWT) usado para identificar o usuário em um serviço do Firebase.
getIdTokenResult(user, forceRefresh) Retorna um JSON Web Token (JWT) desserializado usado para identificar o usuário para um serviço do Firebase.
linkWithCredential(usuário, credencial) Vincula a conta de usuário às credenciais fornecidas.
linkWithNumber(user, phoneNumber, appVerifier) Vincula a conta do usuário ao número de telefone fornecido.
linkWithPop-up(usuário, provedor, resolvedor) Vincula o provedor autenticado à conta do usuário usando um fluxo OAuth baseado em pop-up.
linkWithRedirect(usuário, provedor, resolvedor) Vincula o OAuthProvider à conta de usuário usando um fluxo de redirecionamento de página inteira.
multifator(usuário) O MultiFactorUser correspondente ao usuário.
reauthenticationWithCredential(usuário, credencial) Reautenticar um usuário usando uma nova credencial.
reauthenticationWithNumber(user, phoneNumber, appVerifier) Reautenticar um usuário usando uma nova credencial de smartphone.
reauthenticationWithPop-up(usuário, provedor, resolvedor) Reautenticar o usuário atual com o OAuthProvider especificado usando um fluxo de OAuth baseado em pop-up.
reauthenticationWithRedirect(usuário, provedor, resolvedor) Reautenticar o usuário atual com o OAuthProvider especificado usando um fluxo de redirecionamento de página inteira.
reload(usuário) Recarrega os dados da conta do usuário, se ele estiver conectado.
sendEmailVerificação(user, actionCodeSettings) Envia um e-mail de verificação a um usuário.
unlink(user, providerId) Desvincula um provedor de uma conta de usuário.
updateEmail(user, newEmail) Atualiza o endereço de e-mail do usuário.
updatePassword(user, newPassword) Atualiza a senha do usuário.
updateNumber(usuário, credencial) Atualiza o número de telefone do usuário.
updateProfile(user, { displayName, photoURL: photoUrl }) Atualiza os dados do perfil de um usuário.
verifyBeforeUpdateEmail(user, newEmail, actionCodeSettings) Envia um e-mail de verificação para um novo endereço de e-mail.
function(userCredential, ...)
getAdditionalUserInfo(userCredential) Extrai AdditionalUserInfo específico do provedor para a credencial especificada.

Classes

Turma Descrição
ActionCodeURL (em inglês) Uma classe de utilitário para analisar URLs de ação de e-mail, como redefinição de senha, verificação de e-mail, login com link de e-mail etc.
AuthCredential (em inglês) Interface que representa as credenciais retornadas por um AuthProvider.
EmailAuthCredential (em inglês) Interface que representa as credenciais retornadas por EmailAuthProvider para ProviderId.PASSWORD
EmailAuthProvider (em inglês) Provedor que gera EmailAuthCredential.
FacebookAuthProvider (em inglês) Provedor que gera uma OAuthCredential para ProviderId.FACEBOOK.
GitHubAuthProvider (em inglês) Provedor que gera uma OAuthCredential para ProviderId.GITHUB.
GoogleAuthProvider (em inglês) Provedor que gera uma OAuthCredential para ProviderId.GOOGLE.
OAuthCredential Representa as credenciais do OAuth retornadas por um OAuthProvider.
OAuthProvider (em inglês). Provedor para gerar uma OAuthCredential genérica.
PhoneAuthCredential (em inglês) Representa as credenciais retornadas por PhoneAuthProvider.
PhoneAuthProvider (em inglês) Provedor para gerar uma PhoneAuthCredential.
PhoneMultiFactorGenerator (em inglês) Provedor para gerar uma PhoneMultiFactorAssertion.
RecaptchaVerifier (em inglês) Um verificador de aplicativos baseado em reCAPTCHA.
SAMLAuthProvider (em inglês) Um AuthProvider para SAML.
TotpMultiFactorGenerator (em inglês) Provedor para gerar uma TotpMultiFactorAssertion.
TotpSecret (em inglês) Provedor que gera uma TotpMultiFactorAssertion.Armazena a chave secreta compartilhada e outros parâmetros para gerar OTPs baseadas em tempo. Implementa métodos para recuperar a chave de senha secreta e gerar um URL de QR code.
TwitterAuthProvider (em inglês) Provedor que gera uma OAuthCredential para ProviderId.TWITTER.

Interfaces

Interface Descrição
ActionCodeInfo (em inglês) Uma resposta de checkActionCode().
ActionCodeSettings (em inglês). Uma interface que define o URL de estado/contínuo necessário com identificadores opcionais dos pacotes Android e iOS.
Informações do usuário adicionais Uma estrutura que contém informações adicionais do usuário de um provedor de identidade federado.
ApplicationVerifier (link em inglês) Um verificador para verificação de domínio e prevenção de abuso.
Autenticação Interface que representa o serviço do Firebase Auth.
AuthError Interface para um erro Auth.
AuthErrorMap (em inglês) Um mapeamento de códigos de erro para mensagens de erro.
AuthProvider (em inglês) Interface que representa um provedor de autenticação, usada para facilitar a criação de AuthCredential.
AuthSettings (em inglês) Interface que representa as configurações de uma instância Auth.
Configuração Interface que representa a configuração Auth.
ConfirmationResult Resultado de login, link ou chamada de reautenticação com o número de telefone
Dependências As dependências que podem ser usadas para inicializar uma instância Auth.
EmulatorConfig (em inglês) Configuração do emulador do Firebase Authentication.
IdTokenResult (em inglês) Interface que representa o resultado do token de ID recebido de User.getIdTokenResult().
MultiFactorAssertion (link em inglês) A classe de base para declarar a propriedade de um segundo fator.
MultiFactorError (link em inglês) O erro gerado quando o usuário precisa informar um segundo fator para fazer login.
MultiFactorInfo (em inglês) Uma estrutura que contém as informações de uma entidade de segundo fator.
MultiFactorResolver A classe usada para facilitar a recuperação do MultiFactorError quando um usuário precisa informar um segundo fator para fazer login.
MultiFactorSession (em inglês) Uma interface que define o objeto de sessão de vários fatores usado para registrar um segundo fator em um usuário ou ajudar a fazer o login de um usuário inscrito com um segundo fator.
MultiFactorUser (em inglês) Uma interface que define as propriedades e operações relacionadas a vários fatores pertencentes a um User.
OAuthCredentialOptions. Define as opções para inicializar uma OAuthCredential.
ParsedToken (em inglês) Interface que representa um token de ID analisado.
PasswordPolicy (link em inglês) Uma estrutura que especifica os requisitos da política de senha.
PasswordValidationStatus (link em inglês) Uma estrutura que indica quais requisitos da política de senha foram atendidos ou violados e quais são os requisitos.
Persistência Uma interface que abrange os possíveis tipos de mecanismos de persistência.
PhoneMultiFactorAssertion (link em inglês) A classe para declarar a propriedade de um segundo fator de smartphone. Fornecido por PhoneMultiFactorGenerator.assertion().
PhoneMultiFactorRegistrationInfoOptions (em inglês) Opções usadas para registrar um segundo fator.
PhoneMultiFactorInfo (em inglês) A subclasse da interface MultiFactorInfo para fatores de segundos de número de telefone. O factorId desse segundo fator é FactorId.PHONE.
PhoneMultiFactorSignInInfoOptions (em inglês) Opções usadas para fazer login com um segundo fator.
PhoneSingleFactorInfoOptions (em inglês) Opções usadas para login de fator único.
PopRedirectResolver (em inglês) Um resolvedor usado para processar operações específicas do DOM, como signInWithPop() ou signInWithRedirect().
ReactNativeAsyncStorage (link em inglês) Interface para um AsyncStorage fornecido.
RecaptchaParameters Interface que representa parâmetros reCAPTCHA.Consulte os documentos do reCAPTCHA para ver a lista de parâmetros aceitos. Todos os parâmetros são aceitos, exceto sitekey: o Firebase Auth provisiona um reCAPTCHA para cada projeto e vai configurar a chave do site na renderização.Para um reCAPTCHA invisível, defina a chave size como invisible.
TotpMultiFactorAssertion (link em inglês) A classe para declarar a propriedade de um segundo fator de TOTP. Fornecido por TotpMultiFactorGenerator.assertionForenrollment() e TotpMultiFactorGenerator.assertionForSignIn().
TotpMultiFactorInfo (em inglês) A subclasse da interface MultiFactorInfo para fatores de dois fatores de TOTP. O factorId desse segundo fator é FactorId.TOTP.
Usuário Uma conta de usuário.
UserCredential (em inglês) Uma estrutura contendo um User, o OperationType e o ID do provedor.
UserInfo (em inglês) Informações do perfil do usuário, visíveis apenas para os apps do projeto do Firebase.
UserMetadata (em inglês) Interface que representa os metadados de um usuário.

Variáveis

Variável Descrição
ActionCodeOperation (em inglês) Uma enumeração dos possíveis tipos de ação de e-mail.
AuthErrorCodes (em inglês) Um mapa de possíveis códigos de erro Auth, para facilitar a comparação com os erros gerados pelo SDK.
browserLocalPersistência Uma implementação de Persistência do tipo LOCAL usando localStorage para o armazenamento subjacente.
browserPopRedirectResolver (em inglês) Uma implementação do PopRedirectResolver adequada para aplicativos baseados em navegador.
browserSessionPersistência Uma implementação de Persistência de SESSION usando sessionStorage para o armazenamento subjacente.
cordovaPopRedirectResolver (link em inglês) Uma implementação de PopRedirectResolver adequada para aplicativos baseados no Cordova.
debugErrorMap (em inglês) Um mapa de erros detalhado com descrições detalhadas da maioria dos códigos de erro.Confira a discussão em AuthErrorMap
FactorId (em inglês) Um tipo enumerado de fatores que podem ser usados para a autenticação multifator.
indexedDBLocalPersistent (em inglês) Uma implementação de Persistência do tipo LOCAL usando indexedDB para o armazenamento subjacente.
inMemoryPersistent (link em inglês) Uma implementação de Persistência do tipo "NONE".
OperationType (em inglês) Enumeração de tipos de operação com suporte.
prodErrorMap (link em inglês) Um mapa de erro mínimo sem todas as mensagens de erro detalhadas.Confira a discussão em AuthErrorMap
ProviderId (link em inglês) Enumeração de provedores compatíveis.
SignInMethod (link em inglês) Enumeração de métodos de login compatíveis.

Aliases de tipos

Alias de tipo Descrição
CustomParameters Mapa dos parâmetros personalizados do OAuth.
NextOrObserver (link em inglês) Definição de tipo para um callback de evento.
PhoneInfoOptions (em inglês) As informações necessárias para confirmar a propriedade de um número de telefone.
UserProfile Perfil de usuário usado em AdditionalUserInfo.

função(app, ...)

getAuth(app)

Retorna a instância do Auth associada ao FirebaseApp fornecido. Se não houver nenhuma instância, inicializa uma instância do Auth com dependências padrão específicas da plataforma.

Assinatura:

export declare function getAuth(app?: FirebaseApp): Auth;

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp O app do Firebase.

Retorna:

Autenticação

inicializeAuth(app, deps)

Inicializa uma instância Auth com controle detalhado sobre as Dependências.

Esta função permite mais controle sobre a instância Auth do que getAuth(). getAuth usa padrões específicos da plataforma para fornecer as Dependencies. Em geral, getAuth é a maneira mais fácil de inicializar o Auth e funciona para a maioria dos casos de uso. Use initializeAuth se você precisar controlar qual camada de persistência será usada ou para minimizar o tamanho do pacote se não estiver usando signInWithPopup ou signInWithRedirect.

Por exemplo, se o app usa apenas contas anônimas e você quer que as contas sejam salvas na sessão atual, inicialize Auth com:

const auth = initializeAuth(app, {
  persistence: browserSessionPersistence,
  popupRedirectResolver: undefined,
});

Assinatura:

export declare function initializeAuth(app: FirebaseApp, deps?: Dependencies): Auth;

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp
deps Dependências

Retorna:

Autenticação

função(armazenamento, ...)

getReactNativePersistent(storage)

Retorna um objeto de persistência que envolve o AsyncStorage importado de react-native ou @react-native-community/async-storage, e pode ser usado no campo de dependência de persistência em InitializeAuth().

Assinatura:

export declare function getReactNativePersistence(storage: ReactNativeAsyncStorage): Persistence;

Parâmetros

Parâmetro Tipo Descrição
storage ReactNativeAsyncStorage (link em inglês)

Retorna:

Persistência

function(auth, ...)

applyActionCode(auth, oobCode)

Aplica um código de verificação enviado ao usuário por e-mail ou outro mecanismo fora de banda.

Assinatura:

export declare function applyActionCode(auth: Auth, oobCode: string): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
oobCode string Um código de verificação enviado ao usuário.

Retorna:

Promessa<void>

beforeAuthStateChanged(auth, callback, onAbort)

Adiciona um callback de bloqueio executado antes que uma mudança de estado de autenticação defina um novo usuário.

Assinatura:

export declare function beforeAuthStateChanged(auth: Auth, callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
callback (usuário: Usuário | nulo) => anular | Promessa<void> acionado antes que o novo valor de usuário seja definido. Se isso for gerado, ele impedirá que o usuário seja definido.
onAbort () => anular é acionado se um callback beforeAuthStateChanged() posterior for gerado, permitindo que você desfaça qualquer efeito colateral.

Retorna:

Cancelar inscrição

checkActionCode(auth, oobCode)

Verifica um código de verificação enviado ao usuário por e-mail ou outro mecanismo fora de banda.

Assinatura:

export declare function checkActionCode(auth: Auth, oobCode: string): Promise<ActionCodeInfo>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
oobCode string Um código de verificação enviado ao usuário.

Retorna:

Promessa<ActionCodeInfo>

metadados sobre o código.

confirmPasswordReset(auth, oobCode, newPassword)

Conclui o processo de redefinição de senha com um código de confirmação e uma nova senha.

Assinatura:

export declare function confirmPasswordReset(auth: Auth, oobCode: string, newPassword: string): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
oobCode string Um código de confirmação enviado ao usuário.
newPassword string A nova senha.

Retorna:

Promessa<void>

connectAuthEmulator(auth, url, options)

Altera a instância Auth para se comunicar com o emulador do Firebase Auth em vez dos serviços de produção do Firebase Auth.

Ele precisa ser chamado de maneira síncrona imediatamente após a primeira chamada para InitializeAuth(). Não use com credenciais de produção, porque o tráfego do emulador não é criptografado.

Assinatura:

export declare function connectAuthEmulator(auth: Auth, url: string, options?: {
    disableWarnings: boolean;
}): void;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
url string O URL em que o emulador está sendo executado (por exemplo, 'http://localhost:9099').
options { disableWarnings: boolean; } Opcional. O padrão de options.disableWarnings é false. Defina-o como true para desativar o banner de aviso anexado ao DOM.

Retorna:

void

Exemplo

connectAuthEmulator(auth, 'http://127.0.0.1:9099', { disableWarnings: true });

createUserWithEmailAndPassword(autenticação; e-mail; senha)

Cria uma nova conta de usuário associada ao endereço de e-mail e à senha especificados.

Após a criação da conta de usuário, esse usuário também será conectado ao seu aplicativo.

Pode haver falha na criação da conta de usuário se ela já existir ou se a senha for inválida.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function createUserWithEmailAndPassword(auth: Auth, email: string, password: string): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
e-mail string O endereço de e-mail do usuário.
senha string A senha escolhida pelo usuário.

Retorna:

Promessa<UserCredential>

buscaSignInMethodsForEmail(autenticação, e-mail)

Extrai a lista de possíveis métodos de login para o endereço de e-mail fornecido. Esse método retorna uma lista vazia quando a Proteção contra enumeração de e-mails está ativada, independentemente do número de métodos de autenticação disponíveis para um determinado e-mail.

Isso é útil para diferenciar os métodos de login do mesmo provedor, por exemplo, EmailAuthProvider, que tem dois métodos de login, SignInMethod.EMAIL_PASSWORD e SignInMethod.EMAIL_LINK.

Assinatura:

export declare function fetchSignInMethodsForEmail(auth: Auth, email: string): Promise<string[]>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
e-mail string O endereço de e-mail do usuário.Descontinuado. A migração desse método é uma prática recomendada de segurança. Saiba mais na documentação do Identity Platform para Proteção contra enumeração de e-mails.

Retorna:

Promise&lt;string[]&gt;

getMultiFactorResolver(auth, error)

Fornece um MultiFactorResolver adequado para a conclusão de um fluxo de vários fatores.

Assinatura:

export declare function getMultiFactorResolver(auth: Auth, error: MultiFactorError): MultiFactorResolver;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
error MultiFactorError (link em inglês) O MultiFactorError gerado durante uma operação de login ou de reautenticação.

Retorna:

MultiFactorResolver

getRedirectResult(auth, resolvedor)

Retorna uma UserCredential do fluxo de login com base em redirecionamento.

Se o login tiver ocorrido com sucesso, retornará o usuário conectado. Se o login não foi concluído, falha com um erro. Se nenhuma operação de redirecionamento foi chamada, retorna null.

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function getRedirectResult(auth: Auth, resolver?: PopupRedirectResolver): Promise<UserCredential | null>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<UserCredential | nulo>

Exemplo

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
// You can add additional scopes to the provider:
provider.addScope('user_birthday');
// Start a sign in process for an unauthenticated user.
await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
if (result) {
  // This is the signed-in user
  const user = result.user;
  // This gives you a Facebook Access Token.
  const credential = provider.credentialFromResult(auth, result);
  const token = credential.accessToken;
}
// As this API can be used for sign-in, linking and reauthentication,
// check the operationType to determine what triggered this redirect
// operation.
const operationType = result.operationType;

inicializeRecaptchaConfig(auth)

Carrega a configuração do reCAPTCHA na instância Auth.

Isso carregará a configuração reCAPTCHA, que indica se o fluxo de verificação reCAPTCHA deve ser acionado para cada provedor de autenticação, na sessão atual do Auth.

Se formattedRecaptchaConfig() não for invocado, o fluxo de autenticação sempre começará sem a verificação reCAPTCHA. Se o provedor estiver configurado para exigir a verificação reCAPTCHA, o SDK vai carregar de forma transparente a configuração reCAPTCHA e reiniciar os fluxos de autenticação.

Portanto, ao chamar esse método opcional, você reduz a latência de fluxos de autenticação futuros. O carregamento antecipado da configuração do reCAPTCHA também melhora o indicador coletado pelo reCAPTCHA.

Esse método não funciona em um ambiente Node.js.

Assinatura:

export declare function initializeRecaptchaConfig(auth: Auth): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.

Retorna:

Promessa<void>

Exemplo

initializeRecaptchaConfig(auth);

Verifica se um link recebido é um link de login com e-mail adequado para signInWithEmailLink().

Assinatura:

export declare function isSignInWithEmailLink(auth: Auth, emailLink: string): boolean;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
link do e-mail string O link enviado ao endereço de e-mail do usuário.

Retorna:

booleano

onAuthStateChanged(auth, nextOrObserver, error, complete)

Adiciona um observador para alterações no estado de login do usuário.

Para manter o comportamento antigo, consulte onIdTokenChanged().

Assinatura:

export declare function onAuthStateChanged(auth: Auth, nextOrObserver: NextOrObserver<User>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
nextOrObserver NextOrObserver<Usuário> de retorno de chamada acionado na alteração.
error ErrorFn (link em inglês) Obsoleto. Esse callback nunca é acionado. Os erros ao fazer login/sair podem ser capturados em promessas retornadas das funções de login/logout.
concluída CompleteFn (em inglês) Obsoleto. Esse callback nunca é acionado.

Retorna:

Cancelar inscrição

onIdTokenChanged(auth, nextOrObserver, error, completed)

Adiciona um observador para alterações no token de ID do usuário conectado.

Isso inclui eventos de login, logout e atualização de token. Ele não será acionado automaticamente após a expiração do token de ID. Use User.getIdToken() para atualizar o token de ID.

Assinatura:

export declare function onIdTokenChanged(auth: Auth, nextOrObserver: NextOrObserver<User>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
nextOrObserver NextOrObserver<Usuário> de retorno de chamada acionado na alteração.
error ErrorFn (link em inglês) Obsoleto. Esse callback nunca é acionado. Os erros ao fazer login/sair podem ser capturados em promessas retornadas das funções de login/logout.
concluída CompleteFn (em inglês) Obsoleto. Esse callback nunca é acionado.

Retorna:

Cancelar inscrição

revogarAccessToken(auth, token)

Revoga o token de acesso fornecido. No momento, só é compatível com tokens de acesso OAuth da Apple.

Assinatura:

export declare function revokeAccessToken(auth: Auth, token: string): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
token string O token de acesso OAuth da Apple.

Retorna:

Promessa<void>

sendPasswordResetEmail(auth, email, actionCodeSettings)

Envia um e-mail de redefinição de senha para o endereço de e-mail fornecido. Esse método não gera um erro quando não há uma conta de usuário com o endereço de e-mail fornecido e a Proteção contra enumeração de e-mails está ativada.

Para concluir a redefinição de senha, chame confirmPasswordReset() com o código fornecido no e-mail enviado ao usuário, junto com a nova senha especificada por ele.

Assinatura:

export declare function sendPasswordResetEmail(auth: Auth, email: string, actionCodeSettings?: ActionCodeSettings): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
e-mail string O endereço de e-mail do usuário.
actionCodeSettings ActionCodeSettings (em inglês). A ActionCodeSettings.

Retorna:

Promessa<void>

Exemplo

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendPasswordResetEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain code from user.
await confirmPasswordReset('user@example.com', code);

sendSignInLinkToEmail(auth, email, actionCodeSettings)

Envia um link de e-mail de login para o usuário com o e-mail especificado.

É necessário sempre concluir o processo de login no app, ao contrário de outras ações fora de banda, como redefinição de senha e verificação de e-mail. Isso acontece porque o usuário precisa estar conectado e com o estado Auth mantido no app ao final do fluxo.

Para concluir o login com o link de e-mail, chame signInWithEmailLink() com o endereço de e-mail e o link de e-mail fornecidos no e-mail enviado ao usuário.

Assinatura:

export declare function sendSignInLinkToEmail(auth: Auth, email: string, actionCodeSettings: ActionCodeSettings): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação
e-mail string O endereço de e-mail do usuário.
actionCodeSettings ActionCodeSettings (em inglês). A ActionCodeSettings.

Retorna:

Promessa<void>

Exemplo

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendSignInLinkToEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain emailLink from the user.
if(isSignInWithEmailLink(auth, emailLink)) {
  await signInWithEmailLink(auth, 'user@example.com', emailLink);
}

setPersistent(auth, persistência)

Altera o tipo de persistência na instância Auth para a sessão do Auth salva atualmente e aplica esse tipo de persistência nas solicitações de login futuras, incluindo o login com solicitações de redirecionamento.

Isso faz com que seja mais fácil para o usuário que está fazendo login especificar se a sessão deve ser lembrada ou não. Isso também torna mais fácil nunca manter o estado Auth para aplicativos que são compartilhados por outros usuários ou têm dados sensíveis.

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function setPersistence(auth: Auth, persistence: Persistence): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
persistência Persistência A Persistência a ser usada.

Retorna:

Promessa<void>

Uma Promise que é resolvida quando a mudança de persistência é concluída.

Exemplo

setPersistence(auth, browserSessionPersistence);

signInAnonymously(auth)

Faz login de forma assíncrona como um usuário anônimo.

Se já houver um usuário anônimo conectado, ele será retornado. Caso contrário, uma nova identidade de usuário anônima será criada e retornada.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInAnonymously(auth: Auth): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.

Retorna:

Promessa<UserCredential>

signInWithCredential(auth, credentials)

Faz login de forma assíncrona com as credenciais fornecidas.

Um AuthProvider pode ser usado para gerar a credencial.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithCredential(auth: Auth, credential: AuthCredential): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
credencial AuthCredential (em inglês) A credencial de autenticação.

Retorna:

Promessa<UserCredential>

signInWithCustomToken(auth, customToken)

Faz login de forma assíncrona usando um token personalizado.

Os tokens personalizados são usados para integrar o Firebase Auth a sistemas de autenticação existentes e precisam ser gerados por um back-end de autenticação usando o método createCustomToken no SDK Admin .

Falha com um erro se o token for inválido, expirado ou não for aceito pelo serviço Firebase Auth.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithCustomToken(auth: Auth, customToken: string): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
Token personalizado string O token personalizado para fazer login.

Retorna:

Promessa<UserCredential>

signInWithEmailAndPassword(autenticação, e-mail, senha)

Faz login de forma assíncrona usando e-mail e senha.

Se o endereço de e-mail e a senha não forem iguais, ocorrerá um erro. Quando a Proteção contra enumeração de e-mails está ativada, esse método falha com a mensagem "auth/invalid-credential" no caso de um e-mail/senha inválido.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithEmailAndPassword(auth: Auth, email: string, password: string): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
e-mail string O endereço de e-mail dos usuários.
senha string A senha do usuário.

Retorna:

Promessa<UserCredential>

Faz login de forma assíncrona usando um e-mail e um link de e-mail de login.

Se nenhum link for transmitido, ele será inferido a partir do URL atual.

Se o endereço de e-mail for inválido ou a OTP no link do e-mail expirar, ocorrerá um erro.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithEmailLink(auth: Auth, email: string, emailLink?: string): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
e-mail string O endereço de e-mail do usuário.
link do e-mail string O link enviado ao endereço de e-mail do usuário.

Retorna:

Promessa<UserCredential>

Exemplo

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendSignInLinkToEmail(auth, 'user@example.com', actionCodeSettings);
// Obtain emailLink from the user.
if(isSignInWithEmailLink(auth, emailLink)) {
  await signInWithEmailLink(auth, 'user@example.com', emailLink);
}

signInWithNumber(auth, phoneNumber, appVerifier)

Faz login de forma assíncrona usando um número de telefone.

Esse método envia um código por SMS para o número de telefone especificado e retorna um ConfirmationResult. Depois que o usuário informar o código enviado ao smartphone, chame ConfirmationResult.confirm() com o código para fazer login do usuário.

Para evitar abusos, esse método também exige um ApplicationVerifier. Esse SDK inclui uma implementação baseada em reCAPTCHA, o RecaptchaVerifier. Essa função pode funcionar em outras plataformas que não oferecem suporte ao RecaptchaVerifier (como React Native), mas você precisa usar uma implementação de ApplicationVerifier de terceiros.

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithPhoneNumber(auth: Auth, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
Número de telefone string O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier ApplicationVerifier (link em inglês) O ApplicationVerifier.

Retorna:

Promessa<ConfirmationResult>

Exemplo

// 'recaptcha-container' is the ID of an element in the DOM.
const applicationVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container');
const confirmationResult = await signInWithPhoneNumber(auth, phoneNumber, applicationVerifier);
// Obtain a verificationCode from the user.
const credential = await confirmationResult.confirm(verificationCode);

signInWithPop-up(auth, provider, resolvedor)

Autentica um cliente do Firebase usando um fluxo de autenticação OAuth baseado em pop-ups.

Se for bem-sucedido, retorna o usuário conectado junto com a credencial do provedor. Se o login não tiver sido bem-sucedido, retornará um objeto de erro com informações adicionais sobre o erro.

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithPopup(auth: Auth, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<UserCredential>

Exemplo

// Sign in using a popup.
const provider = new FacebookAuthProvider();
const result = await signInWithPopup(auth, provider);

// The signed-in user info.
const user = result.user;
// This gives you a Facebook Access Token.
const credential = provider.credentialFromResult(auth, result);
const token = credential.accessToken;

signInWithRedirect(auth, provedor, resolvedor)

Autentica um cliente do Firebase usando um fluxo de redirecionamento de página inteira.

Para processar os resultados e erros dessa operação, consulte getRedirectResult(). Siga as práticas recomendadas ao usar signInWithRedirect().

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signInWithRedirect(auth: Auth, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<nunca>

Exemplo

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
// You can add additional scopes to the provider:
provider.addScope('user_birthday');
// Start a sign in process for an unauthenticated user.
await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
if (result) {
  // This is the signed-in user
  const user = result.user;
  // This gives you a Facebook Access Token.
  const credential = provider.credentialFromResult(auth, result);
  const token = credential.accessToken;
}
// As this API can be used for sign-in, linking and reauthentication,
// check the operationType to determine what triggered this redirect
// operation.
const operationType = result.operationType;

logOut(autenticação)

Desconecta o usuário atual.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function signOut(auth: Auth): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.

Retorna:

Promessa<void>

updateCurrentUser(auth; user)

Define de maneira assíncrona o usuário fornecido como Auth.currentUser na instância Auth.

Uma nova cópia da instância do usuário fornecido será feita e definida como currentUser.

Isso acionará os listeners onAuthStateChanged() e onIdTokenChanged() como outros métodos de login.

A operação falhará com um erro se o usuário a ser atualizado pertencer a um projeto diferente do Firebase.

Este método não é compatível com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function updateCurrentUser(auth: Auth, user: User | null): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
user Usuário | nulo O novo User.

Retorna:

Promessa<void>

useDeviceLanguage(auth)

Define o idioma atual como a preferência padrão de dispositivo/navegador.

Assinatura:

export declare function useDeviceLanguage(auth: Auth): void;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.

Retorna:

void

validatePassword(auth, password)

Valida a senha em relação à política de senha configurada para o projeto ou locatário.

Se nenhum ID de locatário for definido na instância Auth, esse método usará a política de senha configurada para o projeto. Caso contrário, o método vai usar a política configurada para o locatário. Se uma política de senha não tiver sido configurada, a política padrão configurada para todos os projetos será usada.

Se um fluxo de autenticação falhar porque uma senha enviada não atende aos requisitos da política de senha e esse método já foi chamado anteriormente, ele usará a política mais recente disponível quando chamado novamente.

Assinatura:

export declare function validatePassword(auth: Auth, password: string): Promise<PasswordValidationStatus>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
senha string A senha a ser validada.

Retorna:

Promessa<PasswordValidationStatus>

Exemplo

validatePassword(auth, 'some-password');

checkPasswordResetCode(auth, code)

Verifica um código de redefinição de senha enviado ao usuário por e-mail ou outro mecanismo fora de banda.

Assinatura:

export declare function verifyPasswordResetCode(auth: Auth, code: string): Promise<string>;

Parâmetros

Parâmetro Tipo Descrição
auth Autenticação A instância Auth.
código string Um código de verificação enviado ao usuário.

Retorna:

Promessa<string>

o endereço de e-mail do usuário, se válido.

parseActionCodeURL(link)

Analisa a string do link de ação de e-mail e retorna um ActionCodeURL se o link for válido. Caso contrário, retorna nulo.

Assinatura:

export declare function parseActionCodeURL(link: string): ActionCodeURL | null;

Parâmetros

Parâmetro Tipo Descrição
link string

Retorna:

ActionCodeURL | nulo

function(user, ...)

deleteUser(usuário)

Exclui e desconecta o usuário.

Assinatura:

export declare function deleteUser(user: User): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.

Retorna:

Promessa<void>

getIdToken(user, forceRefresh)

Retorna um JSON Web Token (JWT) usado para identificar o usuário em um serviço do Firebase.

Retorna o token atual se ele não tiver expirado ou se não expirar nos próximos cinco minutos. Caso contrário, o token será atualizado e um novo será retornado.

Assinatura:

export declare function getIdToken(user: User, forceRefresh?: boolean): Promise<string>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
forceRefresh booleano Forçar a atualização, independentemente da expiração do token.

Retorna:

Promessa<string>

getIdTokenResult(user, forceRefresh)

Retorna um JSON Web Token (JWT) desserializado usado para identificar o usuário para um serviço do Firebase.

Retorna o token atual se ele não tiver expirado ou se não expirar nos próximos cinco minutos. Caso contrário, o token será atualizado e um novo será retornado.

Assinatura:

export declare function getIdTokenResult(user: User, forceRefresh?: boolean): Promise<IdTokenResult>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
forceRefresh booleano Forçar a atualização, independentemente da expiração do token.

Retorna:

Promessa<IdTokenResult>

linkWithCredential(usuário; credencial)

Vincula a conta de usuário às credenciais fornecidas.

Um AuthProvider pode ser usado para gerar a credencial.

Assinatura:

export declare function linkWithCredential(user: User, credential: AuthCredential): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
credencial AuthCredential (em inglês) A credencial de autenticação.

Retorna:

Promessa<UserCredential>

linkWithNumber(user, phoneNumber, appVerifier)

Vincula a conta do usuário ao número de telefone fornecido.

Esse método não funciona em um ambiente Node.js.

Assinatura:

export declare function linkWithPhoneNumber(user: User, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
Número de telefone string O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier ApplicationVerifier (link em inglês) O ApplicationVerifier.

Retorna:

Promessa<ConfirmationResult>

linkWithPop-up(usuário, provedor, resolvedor)

Vincula o provedor autenticado à conta do usuário usando um fluxo OAuth baseado em pop-up.

Se a vinculação for bem-sucedida, o resultado retornado vai conter o usuário e a credencial do provedor.

Esse método não funciona em um ambiente Node.js.

Assinatura:

export declare function linkWithPopup(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<UserCredential>

Exemplo

// Sign in using some other provider.
const result = await signInWithEmailAndPassword(auth, email, password);
// Link using a popup.
const provider = new FacebookAuthProvider();
await linkWithPopup(result.user, provider);

linkWithRedirect(usuário, provedor, resolvedor)

Vincula o OAuthProvider à conta de usuário usando um fluxo de redirecionamento de página inteira.

Para processar os resultados e erros dessa operação, consulte getRedirectResult(). Siga as práticas recomendadas ao usar linkWithRedirect().

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function linkWithRedirect(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<nunca>

Exemplo

// Sign in using some other provider.
const result = await signInWithEmailAndPassword(auth, email, password);
// Link using a redirect.
const provider = new FacebookAuthProvider();
await linkWithRedirect(result.user, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);

multifator(usuário)

O MultiFactorUser correspondente ao usuário.

Isso é usado para acessar todas as propriedades e operações de vários fatores relacionadas ao usuário.

Assinatura:

export declare function multiFactor(user: User): MultiFactorUser;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.

Retorna:

MultiFactorUser (em inglês)

reauthenticationWithCredential(usuário, credencial)

Reautenticar um usuário usando uma nova credencial.

Use antes de operações, como updatePassword(), que exigem tokens de tentativas recentes de login. Esse método pode ser usado para se recuperar de um erro CREDENTIAL_TOO_OLD_LOGIN_AGAIN ou TOKEN_EXPIRED.

Esse método não tem suporte em nenhum User conectado por instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function reauthenticateWithCredential(user: User, credential: AuthCredential): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
credencial AuthCredential (em inglês) A credencial de autenticação.

Retorna:

Promessa<UserCredential>

reautenticarWithNumber(user, phoneNumber, appVerifier)

Reautenticar um usuário usando uma nova credencial de smartphone.

Use antes de operações, como updatePassword(), que exigem tokens de tentativas recentes de login.

Esse método não funciona em um ambiente Node.js ou em qualquer Usuário conectado a instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function reauthenticateWithPhoneNumber(user: User, phoneNumber: string, appVerifier: ApplicationVerifier): Promise<ConfirmationResult>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
Número de telefone string O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier ApplicationVerifier (link em inglês) O ApplicationVerifier.

Retorna:

Promessa<ConfirmationResult>

reauthenticationWithPop-up(usuário, provedor, resolvedor)

Reautenticar o usuário atual com o OAuthProvider especificado usando um fluxo de OAuth baseado em pop-up.

Se a reautenticação for bem-sucedida, o resultado retornado vai conter o usuário e a credencial do provedor.

Esse método não funciona em um ambiente Node.js ou em qualquer Usuário conectado a instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function reauthenticateWithPopup(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<UserCredential>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<UserCredential>

Exemplo

// Sign in using a popup.
const provider = new FacebookAuthProvider();
const result = await signInWithPopup(auth, provider);
// Reauthenticate using a popup.
await reauthenticateWithPopup(result.user, provider);

reauthenticationWithRedirect(usuário, provedor, resolvedor)

Reautenticar o usuário atual com o OAuthProvider especificado usando um fluxo de redirecionamento de página inteira.

Para processar os resultados e erros dessa operação, consulte getRedirectResult(). Siga as práticas recomendadas ao usar reauthenticationWithRedirect().

Esse método não funciona em um ambiente Node.js ou com instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function reauthenticateWithRedirect(user: User, provider: AuthProvider, resolver?: PopupRedirectResolver): Promise<never>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
provider AuthProvider (em inglês) O provedor a ser autenticado. O provedor precisa ser um OAuthProvider. Provedores não OAuth, como EmailAuthProvider, geram um erro.
resolvedor PopRedirectResolver (em inglês) Uma instância de PopRedirectResolver, opcional se já fornecido a InitializeAuth() ou fornecido por getAuth().

Retorna:

Promessa<nunca>

Exemplo

// Sign in using a redirect.
const provider = new FacebookAuthProvider();
const result = await signInWithRedirect(auth, provider);
// This will trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);
// Reauthenticate using a redirect.
await reauthenticateWithRedirect(result.user, provider);
// This will again trigger a full page redirect away from your app

// After returning from the redirect when your app initializes you can obtain the result
const result = await getRedirectResult(auth);

recarregar(usuário)

Recarrega os dados da conta do usuário, se ele estiver conectado.

Assinatura:

export declare function reload(user: User): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.

Retorna:

Promessa<void>

sendEmailVerificação(user, actionCodeSettings)

Envia um e-mail de verificação a um usuário.

O processo de verificação é concluído chamando applyActionCode().

Assinatura:

export declare function sendEmailVerification(user: User, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
actionCodeSettings ActionCodeSettings | nulo A ActionCodeSettings.

Retorna:

Promessa<void>

Exemplo

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await sendEmailVerification(user, actionCodeSettings);
// Obtain code from the user.
await applyActionCode(auth, code);

Desvincula um provedor de uma conta de usuário.

Assinatura:

export declare function unlink(user: User, providerId: string): Promise<User>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
providerId string O provedor que será desvinculado.

Retorna:

Promessa<Usuário>

updateEmail(user, newEmail)

Atualiza o endereço de e-mail do usuário.

Um e-mail será enviado ao endereço de e-mail original (caso tenha sido definido) que permite revogar a alteração do endereço de e-mail para proteger a conta contra invasão.

Esse método não tem suporte em nenhum User conectado por instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function updateEmail(user: User, newEmail: string): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
novoE-mail string O novo endereço de e-mail.Mostra "auth/operation-not-allowed" quando a Proteção contra enumeração de e-mails estiver ativada. Obsoleto: use verifyBeforeUpdateEmail().

Retorna:

Promessa<void>

updatePassword(usuário, novaSenha)

Atualiza a senha do usuário.

Assinatura:

export declare function updatePassword(user: User, newPassword: string): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
newPassword string A nova senha.

Retorna:

Promessa<void>

updatenumber(usuário; credencial)

Atualiza o número de telefone do usuário.

Esse método não funciona em um ambiente Node.js ou em qualquer Usuário conectado a instâncias do Auth criadas com um FirebaseServerApp.

Assinatura:

export declare function updatePhoneNumber(user: User, credential: PhoneAuthCredential): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
credencial PhoneAuthCredential (em inglês) Uma credencial que autentica o novo número de telefone.

Retorna:

Promessa<void>

Exemplo

// 'recaptcha-container' is the ID of an element in the DOM.
const applicationVerifier = new RecaptchaVerifier('recaptcha-container');
const provider = new PhoneAuthProvider(auth);
const verificationId = await provider.verifyPhoneNumber('+16505550101', applicationVerifier);
// Obtain the verificationCode from the user.
const phoneCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
await updatePhoneNumber(user, phoneCredential);

updateProfile(user, { displayName, photoURL: photoUrl })

Atualiza os dados do perfil de um usuário.

Assinatura:

export declare function updateProfile(user: User, { displayName, photoURL: photoUrl }: {
    displayName?: string | null;
    photoURL?: string | null;
}): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
{ displayName, photoURL: photoUrl } { displayName?: string | null; photoURL?: string | null; }

Retorna:

Promessa<void>

checkBeforeUpdateEmail(user, newEmail, actionCodeSettings)

Envia um e-mail de verificação para um novo endereço de e-mail.

O e-mail do usuário será atualizado para o novo após a verificação.

Se você tiver um gerenciador personalizado de ações de e-mail, poderá concluir o processo de verificação chamando applyActionCode().

Assinatura:

export declare function verifyBeforeUpdateEmail(user: User, newEmail: string, actionCodeSettings?: ActionCodeSettings | null): Promise<void>;

Parâmetros

Parâmetro Tipo Descrição
user Usuário O usuário.
novoE-mail string O novo endereço de e-mail a ser verificado antes da atualização.
actionCodeSettings ActionCodeSettings | nulo A ActionCodeSettings.

Retorna:

Promessa<void>

Exemplo

const actionCodeSettings = {
  url: 'https://www.example.com/?email=user@example.com',
  iOS: {
     bundleId: 'com.example.ios'
  },
  android: {
    packageName: 'com.example.android',
    installApp: true,
    minimumVersion: '12'
  },
  handleCodeInApp: true
};
await verifyBeforeUpdateEmail(user, 'newemail@example.com', actionCodeSettings);
// Obtain code from the user.
await applyActionCode(auth, code);

function(userCredential, ...)

getAdditionalUserInfo(userCredential)

Extrai AdditionalUserInfo específico do provedor para a credencial especificada.

Assinatura:

export declare function getAdditionalUserInfo(userCredential: UserCredential): AdditionalUserInfo | null;

Parâmetros

Parâmetro Tipo Descrição
Credencialdeusuário UserCredential (em inglês) A credencial do usuário.

Retorna:

AdditionalUserInfo | nulo

ActionCodeOperation

Uma enumeração dos possíveis tipos de ação de e-mail.

Assinatura:

ActionCodeOperation: {
    readonly EMAIL_SIGNIN: "EMAIL_SIGNIN";
    readonly PASSWORD_RESET: "PASSWORD_RESET";
    readonly RECOVER_EMAIL: "RECOVER_EMAIL";
    readonly REVERT_SECOND_FACTOR_ADDITION: "REVERT_SECOND_FACTOR_ADDITION";
    readonly VERIFY_AND_CHANGE_EMAIL: "VERIFY_AND_CHANGE_EMAIL";
    readonly VERIFY_EMAIL: "VERIFY_EMAIL";
}

AuthErrorCodes

Um mapa de possíveis códigos de erro Auth, para facilitar a comparação com os erros gerados pelo SDK.

Não é possível fazer o tree shaking de chaves individuais no mapa. Portanto, ao usar o mapa, você pode aumentar significativamente o tamanho do pacote.

Assinatura:

AUTH_ERROR_CODES_MAP_DO_NOT_USE_INTERNALLY: {
    readonly ADMIN_ONLY_OPERATION: "auth/admin-restricted-operation";
    readonly ARGUMENT_ERROR: "auth/argument-error";
    readonly APP_NOT_AUTHORIZED: "auth/app-not-authorized";
    readonly APP_NOT_INSTALLED: "auth/app-not-installed";
    readonly CAPTCHA_CHECK_FAILED: "auth/captcha-check-failed";
    readonly CODE_EXPIRED: "auth/code-expired";
    readonly CORDOVA_NOT_READY: "auth/cordova-not-ready";
    readonly CORS_UNSUPPORTED: "auth/cors-unsupported";
    readonly CREDENTIAL_ALREADY_IN_USE: "auth/credential-already-in-use";
    readonly CREDENTIAL_MISMATCH: "auth/custom-token-mismatch";
    readonly CREDENTIAL_TOO_OLD_LOGIN_AGAIN: "auth/requires-recent-login";
    readonly DEPENDENT_SDK_INIT_BEFORE_AUTH: "auth/dependent-sdk-initialized-before-auth";
    readonly DYNAMIC_LINK_NOT_ACTIVATED: "auth/dynamic-link-not-activated";
    readonly EMAIL_CHANGE_NEEDS_VERIFICATION: "auth/email-change-needs-verification";
    readonly EMAIL_EXISTS: "auth/email-already-in-use";
    readonly EMULATOR_CONFIG_FAILED: "auth/emulator-config-failed";
    readonly EXPIRED_OOB_CODE: "auth/expired-action-code";
    readonly EXPIRED_POPUP_REQUEST: "auth/cancelled-popup-request";
    readonly INTERNAL_ERROR: "auth/internal-error";
    readonly INVALID_API_KEY: "auth/invalid-api-key";
    readonly INVALID_APP_CREDENTIAL: "auth/invalid-app-credential";
    readonly INVALID_APP_ID: "auth/invalid-app-id";
    readonly INVALID_AUTH: "auth/invalid-user-token";
    readonly INVALID_AUTH_EVENT: "auth/invalid-auth-event";
    readonly INVALID_CERT_HASH: "auth/invalid-cert-hash";
    readonly INVALID_CODE: "auth/invalid-verification-code";
    readonly INVALID_CONTINUE_URI: "auth/invalid-continue-uri";
    readonly INVALID_CORDOVA_CONFIGURATION: "auth/invalid-cordova-configuration";
    readonly INVALID_CUSTOM_TOKEN: "auth/invalid-custom-token";
    readonly INVALID_DYNAMIC_LINK_DOMAIN: "auth/invalid-dynamic-link-domain";
    readonly INVALID_EMAIL: "auth/invalid-email";
    readonly INVALID_EMULATOR_SCHEME: "auth/invalid-emulator-scheme";
    readonly INVALID_IDP_RESPONSE: "auth/invalid-credential";
    readonly INVALID_LOGIN_CREDENTIALS: "auth/invalid-credential";
    readonly INVALID_MESSAGE_PAYLOAD: "auth/invalid-message-payload";
    readonly INVALID_MFA_SESSION: "auth/invalid-multi-factor-session";
    readonly INVALID_OAUTH_CLIENT_ID: "auth/invalid-oauth-client-id";
    readonly INVALID_OAUTH_PROVIDER: "auth/invalid-oauth-provider";
    readonly INVALID_OOB_CODE: "auth/invalid-action-code";
    readonly INVALID_ORIGIN: "auth/unauthorized-domain";
    readonly INVALID_PASSWORD: "auth/wrong-password";
    readonly INVALID_PERSISTENCE: "auth/invalid-persistence-type";
    readonly INVALID_PHONE_NUMBER: "auth/invalid-phone-number";
    readonly INVALID_PROVIDER_ID: "auth/invalid-provider-id";
    readonly INVALID_RECIPIENT_EMAIL: "auth/invalid-recipient-email";
    readonly INVALID_SENDER: "auth/invalid-sender";
    readonly INVALID_SESSION_INFO: "auth/invalid-verification-id";
    readonly INVALID_TENANT_ID: "auth/invalid-tenant-id";
    readonly MFA_INFO_NOT_FOUND: "auth/multi-factor-info-not-found";
    readonly MFA_REQUIRED: "auth/multi-factor-auth-required";
    readonly MISSING_ANDROID_PACKAGE_NAME: "auth/missing-android-pkg-name";
    readonly MISSING_APP_CREDENTIAL: "auth/missing-app-credential";
    readonly MISSING_AUTH_DOMAIN: "auth/auth-domain-config-required";
    readonly MISSING_CODE: "auth/missing-verification-code";
    readonly MISSING_CONTINUE_URI: "auth/missing-continue-uri";
    readonly MISSING_IFRAME_START: "auth/missing-iframe-start";
    readonly MISSING_IOS_BUNDLE_ID: "auth/missing-ios-bundle-id";
    readonly MISSING_OR_INVALID_NONCE: "auth/missing-or-invalid-nonce";
    readonly MISSING_MFA_INFO: "auth/missing-multi-factor-info";
    readonly MISSING_MFA_SESSION: "auth/missing-multi-factor-session";
    readonly MISSING_PHONE_NUMBER: "auth/missing-phone-number";
    readonly MISSING_SESSION_INFO: "auth/missing-verification-id";
    readonly MODULE_DESTROYED: "auth/app-deleted";
    readonly NEED_CONFIRMATION: "auth/account-exists-with-different-credential";
    readonly NETWORK_REQUEST_FAILED: "auth/network-request-failed";
    readonly NULL_USER: "auth/null-user";
    readonly NO_AUTH_EVENT: "auth/no-auth-event";
    readonly NO_SUCH_PROVIDER: "auth/no-such-provider";
    readonly OPERATION_NOT_ALLOWED: "auth/operation-not-allowed";
    readonly OPERATION_NOT_SUPPORTED: "auth/operation-not-supported-in-this-environment";
    readonly POPUP_BLOCKED: "auth/popup-blocked";
    readonly POPUP_CLOSED_BY_USER: "auth/popup-closed-by-user";
    readonly PROVIDER_ALREADY_LINKED: "auth/provider-already-linked";
    readonly QUOTA_EXCEEDED: "auth/quota-exceeded";
    readonly REDIRECT_CANCELLED_BY_USER: "auth/redirect-cancelled-by-user";
    readonly REDIRECT_OPERATION_PENDING: "auth/redirect-operation-pending";
    readonly REJECTED_CREDENTIAL: "auth/rejected-credential";
    readonly SECOND_FACTOR_ALREADY_ENROLLED: "auth/second-factor-already-in-use";
    readonly SECOND_FACTOR_LIMIT_EXCEEDED: "auth/maximum-second-factor-count-exceeded";
    readonly TENANT_ID_MISMATCH: "auth/tenant-id-mismatch";
    readonly TIMEOUT: "auth/timeout";
    readonly TOKEN_EXPIRED: "auth/user-token-expired";
    readonly TOO_MANY_ATTEMPTS_TRY_LATER: "auth/too-many-requests";
    readonly UNAUTHORIZED_DOMAIN: "auth/unauthorized-continue-uri";
    readonly UNSUPPORTED_FIRST_FACTOR: "auth/unsupported-first-factor";
    readonly UNSUPPORTED_PERSISTENCE: "auth/unsupported-persistence-type";
    readonly UNSUPPORTED_TENANT_OPERATION: "auth/unsupported-tenant-operation";
    readonly UNVERIFIED_EMAIL: "auth/unverified-email";
    readonly USER_CANCELLED: "auth/user-cancelled";
    readonly USER_DELETED: "auth/user-not-found";
    readonly USER_DISABLED: "auth/user-disabled";
    readonly USER_MISMATCH: "auth/user-mismatch";
    readonly USER_SIGNED_OUT: "auth/user-signed-out";
    readonly WEAK_PASSWORD: "auth/weak-password";
    readonly WEB_STORAGE_UNSUPPORTED: "auth/web-storage-unsupported";
    readonly ALREADY_INITIALIZED: "auth/already-initialized";
    readonly RECAPTCHA_NOT_ENABLED: "auth/recaptcha-not-enabled";
    readonly MISSING_RECAPTCHA_TOKEN: "auth/missing-recaptcha-token";
    readonly INVALID_RECAPTCHA_TOKEN: "auth/invalid-recaptcha-token";
    readonly INVALID_RECAPTCHA_ACTION: "auth/invalid-recaptcha-action";
    readonly MISSING_CLIENT_TYPE: "auth/missing-client-type";
    readonly MISSING_RECAPTCHA_VERSION: "auth/missing-recaptcha-version";
    readonly INVALID_RECAPTCHA_VERSION: "auth/invalid-recaptcha-version";
    readonly INVALID_REQ_TYPE: "auth/invalid-req-type";
}

browserLocalPersistência

Uma implementação de Persistência do tipo LOCAL usando localStorage para o armazenamento subjacente.

Assinatura:

browserLocalPersistence: Persistence

navegadorPopRedirectResolver

Uma implementação do PopRedirectResolver adequada para aplicativos baseados em navegador.

Esse método não funciona em um ambiente Node.js.

Assinatura:

browserPopupRedirectResolver: PopupRedirectResolver

navegadorSessionPersistência

Uma implementação de Persistência de SESSION usando sessionStorage para o armazenamento subjacente.

Assinatura:

browserSessionPersistence: Persistence

cordovaPopRedirectResolver

Uma implementação de PopRedirectResolver adequada para aplicativos baseados no Cordova.

Assinatura:

cordovaPopupRedirectResolver: PopupRedirectResolver

debugErrorMap

Um mapa de erros detalhado com descrições detalhadas da maioria dos códigos de erro.

Veja a discussão em AuthErrorMap

Assinatura:

debugErrorMap: AuthErrorMap

ID do fator

Um tipo enumerado de fatores que podem ser usados para a autenticação multifator.

Assinatura:

FactorId: {
    readonly PHONE: "phone";
    readonly TOTP: "totp";
}

indexadoDBLocalPersistência

Uma implementação de Persistência do tipo LOCAL usando indexedDB para o armazenamento subjacente.

Assinatura:

indexedDBLocalPersistence: Persistence

inMemoryPersistência

Uma implementação de Persistência do tipo "NONE".

Assinatura:

inMemoryPersistence: Persistence

OperationType

Enumeração de tipos de operação com suporte.

Assinatura:

OperationType: {
    readonly LINK: "link";
    readonly REAUTHENTICATE: "reauthenticate";
    readonly SIGN_IN: "signIn";
}

prodErrorMap

Um mapa de erros mínimo com todas as mensagens de erro detalhadas removidas.

Veja a discussão em AuthErrorMap

Assinatura:

prodErrorMap: AuthErrorMap

ID do provedor

Enumeração de provedores compatíveis.

Assinatura:

ProviderId: {
    readonly FACEBOOK: "facebook.com";
    readonly GITHUB: "github.com";
    readonly GOOGLE: "google.com";
    readonly PASSWORD: "password";
    readonly PHONE: "phone";
    readonly TWITTER: "twitter.com";
}

SignInMethod

Enumeração de métodos de login compatíveis.

Assinatura:

SignInMethod: {
    readonly EMAIL_LINK: "emailLink";
    readonly EMAIL_PASSWORD: "password";
    readonly FACEBOOK: "facebook.com";
    readonly GITHUB: "github.com";
    readonly GOOGLE: "google.com";
    readonly PHONE: "phone";
    readonly TWITTER: "twitter.com";
}

Parâmetros personalizados

Mapa dos parâmetros personalizados do OAuth.

Assinatura:

export declare type CustomParameters = Record<string, string>;

NextOrObserver

Definição de tipo para um callback de evento.

Assinatura:

export declare type NextOrObserver<T> = NextFn<T | null> | Observer<T | null>;

Opções de informações de telefone

As informações necessárias para confirmar a propriedade de um número de telefone.

As informações necessárias dependem do tipo de login usado: de fator único, multifator ou multifator.

Assinatura:

export declare type PhoneInfoOptions = PhoneSingleFactorInfoOptions | PhoneMultiFactorEnrollInfoOptions | PhoneMultiFactorSignInInfoOptions;

UserProfile

Perfil de usuário usado em AdditionalUserInfo.

Assinatura:

export declare type UserProfile = Record<string, unknown>;