auth package

Autenticação Firebase

Funções

Função Descrição
função (aplicativo...)
getAuth(aplicativo) Retorna a instância Auth associada ao FirebaseApp fornecido . Se não existir nenhuma instância, inicializa uma instância Auth com dependências padrão específicas da plataforma.
inicializeAuth(aplicativo, dependências) Inicializa uma instância Auth com controle refinado sobre dependências .
função (armazenamento...)
getReactNativePersistence(armazenamento) Retorna um objeto de persistência que envolve AsyncStorage importado de react-native ou @react-native-community/async-storage e pode ser usado no campo de dependência de persistência em inicializeAuth() .
função(autenticação...)
applyActionCode(auth, oobCode) Aplica um código de verificação enviado ao usuário por email ou outro mecanismo fora de banda.
beforeAuthStateChanged(autenticação, retorno de chamada, onAbort) Adiciona um retorno de chamada de bloqueio executado antes que uma alteração 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 email ou outro mecanismo fora de banda.
confirmPasswordReset(auth, oobCode, newPassword) Conclui o processo de redefinição de senha, recebendo um código de confirmação e uma nova senha.
connectAuthEmulator(autenticação,url,opções) Altera a instância do Auth para se comunicar com o Firebase Auth Emulator, em vez dos serviços de produção do Firebase Auth.
createUserWithEmailAndPassword(autenticação, email, senha) Cria uma nova conta de usuário associada ao endereço de e-mail e senha especificados.
fetchSignInMethodsForEmail(autenticação, email) Obtém a lista de possíveis métodos de login para o endereço de email fornecido. Este método retorna uma lista vazia quando [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) está ativado, independentemente do número de métodos de autenticação disponíveis para o dado e-mail.
getMultiFactorResolver(autenticação,erro) Fornece um MultiFactorResolver adequado para conclusão de um fluxo multifatorial.
getRedirectResult(auth, resolvedor) Retorna um UserCredential do fluxo de entrada baseado em redirecionamento.
inicializarRecaptchaConfig(auth) Carrega a configuração do reCAPTCHA na instância Auth .
isSignInWithEmailLink(auth, emailLink) Verifica se um link de entrada é um link de login com email adequado para signInWithEmailLink() .
onAuthStateChanged(auth, nextOrObserver, erro, concluído) Adiciona um observador para alterações no estado de login do usuário.
onIdTokenChanged(auth, nextOrObserver, erro, concluído) Adiciona um observador para alterações no token de ID do usuário conectado.
revokeAccessToken(autenticação, token) Revoga o token de acesso fornecido. Atualmente oferece suporte apenas a tokens de acesso Apple OAuth.
sendPasswordResetEmail(auth, email, actionCodeSettings) Envia um e-mail de redefinição de senha para o endereço de e-mail fornecido. Este método não gera um erro quando não há nenhuma conta de usuário com o endereço de e-mail fornecido e a [Proteção de enumeração de e-mail](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) está ativada .
sendSignInLinkToEmail(auth, email, actionCodeSettings) Envia um link de e-mail de login ao usuário com o e-mail especificado.
setPersistence(auth, persistência) Altera o tipo de persistência na instância Auth para a sessão Auth atualmente salva e aplica esse tipo de persistência para solicitações de login futuras, incluindo login com solicitações de redirecionamento.
entrar anonimamente (auth) Faz login de forma assíncrona como um usuário anônimo.
signInWithCredential(auth, credencial) Faz login de forma assíncrona com as credenciais fornecidas.
signInWithCustomToken(auth, customToken) Faz login de forma assíncrona usando um token personalizado.
signInWithEmailAndPassword(autenticação, email, senha) Faça login de forma assíncrona usando um e-mail e uma senha.
signInWithEmailLink(auth, email, emailLink) Faz login de forma assíncrona usando um e-mail e um link de e-mail de login.
signInWithPhoneNumber(auth, phoneNumber, appVerifier) Faz login de forma assíncrona usando um número de telefone.
signInWithPopup(auth, provedor, resolvedor) Autentica um cliente Firebase usando um fluxo de autenticação OAuth baseado em pop-up.
signInWithRedirect(autenticação, provedor, resolvedor) Autentica um cliente do Firebase usando um fluxo de redirecionamento de página inteira.
sair (autenticação) Desconecta o usuário atual.
updateCurrentUser(auth, usuário) Define de forma assíncrona o usuário fornecido como Auth.currentUser na instância Auth .
useDeviceLanguage(auth) Define o idioma atual para a preferência padrão do dispositivo/navegador.
validarSenha(autenticação, senha) Valida a senha em relação à política de senha configurada para o projeto ou locatário.
verifyPasswordResetCode(autenticação, código) Verifica um código de redefinição de senha enviado ao usuário por e-mail ou outro mecanismo fora de banda.
função(link...)
analisarActionCodeURL(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.
função(usuário...)
deletarUsuário(usuário) Exclui e desconecta o usuário.
getIdToken(usuário, forceRefresh) Retorna um JSON Web Token (JWT) usado para identificar o usuário em um serviço do Firebase.
getIdTokenResult(usuário, forceRefresh) Retorna um JSON Web Token (JWT) desserializado usado para identificar o usuário em um serviço do Firebase.
linkWithCredential(usuário, credencial) Vincula a conta do usuário às credenciais fornecidas.
linkWithPhoneNumber(usuário, telefoneNumber, appVerifier) Vincula a conta do usuário ao número de telefone fornecido.
linkWithPopup(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 do usuário usando um fluxo de redirecionamento de página inteira.
multifator (usuário) O MultiFactorUser correspondente ao usuário.
reauthenticateWithCredential(usuário, credencial) Autentica novamente um usuário usando uma nova credencial.
reauthenticateWithPhoneNumber(usuário, phoneNumber, appVerifier) Autentica novamente um usuário usando uma nova credencial de telefone.
reauthenticateWithPopup(usuário, provedor, resolvedor) Reautentica o usuário atual com o OAuthProvider especificado usando um fluxo OAuth baseado em pop-up.
reauthenticateWithRedirect(usuário, provedor, resolvedor) Reautentica o usuário atual com o OAuthProvider especificado usando um fluxo de redirecionamento de página inteira.
recarregar (usuário) Recarrega os dados da conta do usuário, se estiver conectado.
sendEmailVerification(usuário, actionCodeSettings) Envia um e-mail de verificação para um usuário.
desvincular(usuário, ID do provedor) Desvincula um provedor de uma conta de usuário.
updateEmail(usuário, novoEmail) Atualiza o endereço de e-mail do usuário.
updatePassword(usuário, novaSenha) Atualiza a senha do usuário.
updatePhoneNumber(usuário, credencial) Atualiza o número de telefone do usuário.
updateProfile (usuário, { displayName, fotoURL: fotoUrl }) Atualiza os dados do perfil de um usuário.
verifyBeforeUpdateEmail(usuário, newEmail, actionCodeSettings) Envia um e-mail de verificação para um novo endereço de e-mail.
função(userCredential...)
getAdditionalUserInfo(userCredential) Extrai AdicionalUserInfo específico do provedor para a credencial fornecida.

Aulas

Aula Descrição
ActionCodeURL 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 de link de e-mail, etc.
Credencial de autenticação Interface que representa as credenciais retornadas por um AuthProvider .
EmailAuthCredencial Interface que representa as credenciais retornadas por EmailAuthProvider para ProviderId .SENHA
EmailAuthProvider Provedor para geração de EmailAuthCredential .
FacebookAuthProvider Provedor para gerar um OAuthCredential para ProviderId .FACEBOOK.
GithubAuthProvider Provedor para gerar um OAuthCredential para ProviderId .GITHUB.
GoogleAuthProvider Provedor para gerar um OAuthCredential para ProviderId .GOOGLE.
Credencial OAuth Representa as credenciais OAuth retornadas por um OAuthProvider .
Provedor OAuth Provedor para gerar OAuthCredential genérico .
Credencial PhoneAuth Representa as credenciais retornadas por PhoneAuthProvider .
PhoneAuthProvider Provedor para gerar um PhoneAuthCredential .
PhoneMultiFactorGenerator Provedor para gerar um PhoneMultiFactorAssertion .
RecaptchaVerifier Um reCAPTCHA verificador de aplicativos baseado em .
SAMLAuthProvider Um AuthProvider para SAML.
Gerador TotpMultiFactor Provedor para gerar um TotpMultiFactorAssertion .
TotpSegredo Provedor para gerar um TotpMultiFactorAssertion . Armazena a chave secreta compartilhada e outros parâmetros para gerar OTPs baseados em tempo. Implementa métodos para recuperar a chave secreta compartilhada e gerar um URL de código QR.
TwitterAuthProvider Provedor para gerar um OAuthCredential para ProviderId .TWITTER.

Interfaces

Interface Descrição
ActionCodeInfo Uma resposta de checkActionCode() .
Configurações de ActionCode Uma interface que define o URL de continuação/estado necessário com identificadores de pacote Android e iOS opcionais.
Informações adicionais do usuário Uma estrutura que contém informações adicionais do usuário de um provedor de identidade federado.
Verificador de aplicativo Um verificador para verificação de domínio e prevenção de abusos.
Autenticação Interface que representa o serviço Firebase Auth.
Erro de autenticação Interface para um erro Auth .
AuthErrorMap Um mapeamento de códigos de erro para mensagens de erro.
Provedor de autenticação Interface que representa um provedor de autenticação, usada para facilitar a criação de AuthCredential .
Configurações de autenticação Interface que representa as configurações de uma instância Auth .
Configuração Interface que representa a configuração do Auth .
Resultado de confirmação Um resultado de login, link ou chamada reautenticada de um número de telefone.
Dependências As dependências que podem ser usadas para inicializar uma instância Auth .
Configuração do emulador Configuração do emulador de autenticação Firebase.
IdTokenResult Interface que representa o resultado do token de ID obtido de User.getIdTokenResult() .
Asserção MultiFactor A classe base para afirmar a propriedade de um segundo fator.
Erro MultiFactor O erro gerado quando o usuário precisa fornecer um segundo fator para entrar com êxito.
MultiFactorInfo Uma estrutura que contém as informações de uma entidade de segundo fator.
MultiFactorResolver A classe usada para facilitar a recuperação de MultiFactorError quando um usuário precisa fornecer um segundo fator para entrar.
Sessão MultiFactor Uma interface que define o objeto de sessão multifator usado para registrar um segundo fator em um usuário ou ajudar a conectar um usuário inscrito com um segundo fator.
MultiFactorUser Uma interface que define as propriedades e operações relacionadas a vários fatores pertencentes a um usuário .
Opções de credencial OAuth Define as opções para inicializar um OAuthCredential .
ParsedToken Interface que representa um token de ID analisado.
Política de senha Uma estrutura que especifica os requisitos da política de senha.
Status de validação de senha Uma estrutura que indica quais requisitos de política de senha foram atendidos ou violados e quais são os requisitos.
Persistência Uma interface que cobre os possíveis tipos de mecanismos de persistência.
Asserção PhoneMultiFactor A classe para afirmar a propriedade de um segundo fator de telefone. Fornecido por PhoneMultiFactorGenerator.assertion() .
PhoneMultiFactorEnrollInfoOptions Opções utilizadas para inscrição de um segundo fator.
TelefoneMultiFactorInfo A subclasse da interface MultiFactorInfo para segundos fatores de número de telefone. O factorId deste segundo fator é FactorId .TELEFONE.
PhoneMultiFactorSignInInfoOptions Opções usadas para fazer login com um segundo fator.
PhoneSingleFactorInfoOptions Opções usadas para login de fator único.
PopupRedirectResolver Um resolvedor usado para lidar com operações específicas do DOM, como signInWithPopup() ou signInWithRedirect() .
ReactNativeAsyncStorage Interface para um AsyncStorage fornecido.
Parâmetros Recaptcha Interface que representa parâmetros reCAPTCHA. Consulte a [documentação do reCAPTCHA](https://developers.google.com/recaptcha/docs/display#render_param) 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 configurará a chave do site na renderização. Para um reCAPTCHA invisível, defina a chave size como invisible .
Asserção TotpMultiFactor A classe para afirmar a propriedade de um segundo fator TOTP. Fornecido por TotpMultiFactorGenerator.assertionForEnrollment() e TotpMultiFactorGenerator.assertionForSignIn() .
TotpMultiFactorInfo A subclasse da interface MultiFactorInfo para segundos fatores TOTP. O factorId deste segundo fator é FactorId .TOTP.
Do utilizador Uma conta de usuário.
Credencial de usuário Uma estrutura contendo um usuário , o OperationType e o ID do provedor.
Informação de usuário Informações do perfil do usuário, visíveis apenas para os aplicativos do projeto Firebase.
UserMetadados Interface que representa os metadados de um usuário.

Variáveis

Variável Descrição
ActionCodeOperação Uma enumeração dos possíveis tipos de ação de email.
Códigos de erro de autenticação Um mapa de possíveis códigos de erro Auth , para facilitar a comparação com erros gerados pelo SDK.
navegadorLocalPersistence Uma implementação de persistência do tipo LOCAL usando localStorage para o armazenamento subjacente.
navegadorPopupRedirectResolver Uma implementação de PopupRedirectResolver adequada para aplicativos baseados em navegador.
navegadorSessionPersistence Uma implementação de Persistência de SESSION usando sessionStorage para o armazenamento subjacente.
cordovaPopupRedirectResolver Uma implementação de PopupRedirectResolver adequada para aplicativos baseados em Cordova.
debugErrorMap Um mapa de erros detalhado com descrições detalhadas para a maioria dos códigos de erro. Veja a discussão em AuthErrorMap
ID do Fator Uma enumeração de fatores que podem ser usados ​​para autenticação multifator.
indexadoDBLocalPersistence Uma implementação de persistência do tipo LOCAL usando indexedDB para o armazenamento subjacente.
inMemoryPersistência Uma implementação de Persistência do tipo 'NONE'.
Tipo de operação Enumeração de tipos de operação suportados.
prodErrorMap Um mapa de erros mínimo com todas as mensagens de erro detalhadas removidas. Veja a discussão em AuthErrorMap
ID do provedor Enumeração de provedores suportados.
Método SignIn Enumeração de métodos de login suportados.

Aliases de tipo

Digite Alias Descrição
Parâmetros personalizados Mapa de parâmetros personalizados do OAuth.
PróximoOrObservador Definição de tipo para um retorno de chamada de evento.
Opções de informações do telefone As informações necessárias para verificar a propriedade de um número de telefone.
Perfil de usuário Perfil de usuário usado em AdicionalUserInfo .

getAuth()

Retorna a instância Auth associada ao FirebaseApp fornecido . Se não existir nenhuma instância, inicializa uma instância 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
aplicativo Aplicativo Firebase O aplicativo Firebase.

Retorna:

Autenticação

inicializarAuth()

Inicializa uma instância Auth com controle refinado sobre 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 dependências . Em geral, getAuth é a maneira mais fácil de inicializar o Auth e funciona para a maioria dos casos de uso. Use initializeAuth se precisar controlar qual camada de persistência é usada ou para minimizar o tamanho do pacote se não estiver usando signInWithPopup ou signInWithRedirect .

Por exemplo, se seu aplicativo usa apenas contas anônimas e você deseja salvar apenas contas para a 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
aplicativo Aplicativo Firebase
dependências Dependências

Retorna:

Autenticação

getReactNativePersistence()

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
armazenar ReactNativeAsyncStorage

Retorna:

Persistência

aplicarActionCode()

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

Assinatura:

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

Parâmetros

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

Retorna:

Promessa<void>

beforeAuthStateChanged()

Adiciona um retorno de chamada de bloqueio executado antes que uma alteração 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
autenticação Autenticação A instância Auth .
ligar de volta (usuário: Usuário | nulo) => vazio | Promessa<void> retorno de chamada acionado antes que o novo valor do usuário seja definido. Se isso ocorrer, impedirá que o usuário seja configurado.
onAbort () => nulo retorno de chamada acionado se um retorno de chamada beforeAuthStateChanged() posterior for lançado, permitindo desfazer quaisquer efeitos colaterais.

Retorna:

Cancelar subscrição

verificarActionCode()

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

Assinatura:

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

Parâmetros

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

Retorna:

Promessa< ActionCodeInfo >

metadados sobre o código.

confirmPasswordReset()

Conclui o processo de redefinição de senha, recebendo 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
autenticação Autenticação A instância Auth .
oobCode corda Um código de confirmação enviado ao usuário.
Nova Senha corda A nova senha.

Retorna:

Promessa<void>

connectAuthEmulator()

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

Deve ser chamado de forma síncrona imediatamente após a primeira chamada para inicializarAuth() . Não use com credenciais de produção, pois 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
autenticação Autenticação A instância Auth .
url corda A URL na qual o emulador está sendo executado (por exemplo, 'http://localhost:9099').
opções { desativarAvisos: booleano; } Opcional. options.disableWarnings tem como padrão false . Defina-o como true para desativar o banner de aviso anexado ao DOM.

Retorna:

vazio

Exemplo

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

createUserWithEmailAndPassword()

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

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

A criação da conta de usuário poderá falhar se a conta já existir ou a senha for inválida.

Assinatura:

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

Parâmetros

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

Retorna:

Promessa< CredencialdoUsuário >

fetchSignInMethodsForEmail()

Obtém a lista de possíveis métodos de login para o endereço de email fornecido. Este método retorna uma lista vazia quando [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) está ativado, independentemente do número de métodos de autenticação disponíveis para o dado e-mail.

Isto é útil para diferenciar métodos de login para o mesmo provedor, por exemplo. EmailAuthProvider que possui 2 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
autenticação Autenticação A instância Auth .
e-mail corda O endereço de e-mail do usuário. Descontinuada. A migração desse método é recomendada como prática recomendada de segurança. Saiba mais na documentação do Identity Platform para [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection).

Retorna:

Promessa<string[]>

getMultiFactorResolver()

Fornece um MultiFactorResolver adequado para conclusão de um fluxo multifatorial.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
erro Erro MultiFactor O MultiFactorError gerado durante uma operação de login ou reautenticação.

Retorna:

MultiFactorResolver

getRedirectResult()

Retorna um UserCredential do fluxo de entrada baseado em redirecionamento.

Se a entrada for bem-sucedida, retornará o usuário conectado. Se o login não for bem-sucedido, falhará com um erro. Se nenhuma operação de redirecionamento foi chamada, retorna null .

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Promessa< CredencialdoUsuário | 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;

inicializarRecaptchaConfig()

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

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

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

Assim, ao chamar este método opcional, você reduzirá a latência de futuros fluxos de autenticação. Carregar a configuração do reCAPTCHA antecipadamente também melhorará o sinal coletado pelo reCAPTCHA.

Este 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
autenticação Autenticação A instância Auth .

Retorna:

Promessa<void>

Exemplo

initializeRecaptchaConfig(auth);

Verifica se um link de entrada é um link de login com email adequado para signInWithEmailLink() .

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
e-mailLink corda O link enviado para o endereço de e-mail do usuário.

Retorna:

boleano

onAuthStateChanged()

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
autenticação Autenticação A instância Auth .
próximoOrObserver PróximoOrObservador < Usuário > retorno de chamada acionado na mudança.
erro ErroFn Descontinuada. Este retorno de chamada nunca é acionado. Erros ao entrar/sair podem ser detectados em promessas retornadas de funções de entrada/saída.
concluído CompletoFn Descontinuada. Este retorno de chamada nunca é acionado.

Retorna:

Cancelar subscrição

onIdTokenChanged()

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

Isso inclui eventos de entrada, saída e atualização de token. Isso 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
autenticação Autenticação A instância Auth .
próximoOrObserver PróximoOrObservador < Usuário > retorno de chamada acionado na mudança.
erro ErroFn Descontinuada. Este retorno de chamada nunca é acionado. Erros ao entrar/sair podem ser detectados em promessas retornadas de funções de entrada/saída.
concluído CompletoFn Descontinuada. Este retorno de chamada nunca é acionado.

Retorna:

Cancelar subscrição

revogarAccessToken()

Revoga o token de acesso fornecido. Atualmente oferece suporte apenas a tokens de acesso Apple OAuth.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
símbolo corda O token de acesso Apple OAuth.

Retorna:

Promessa<void>

sendPasswordResetEmail()

Envia um e-mail de redefinição de senha para o endereço de e-mail fornecido. Este método não gera um erro quando não há nenhuma conta de usuário com o endereço de e-mail fornecido e a [Proteção de enumeração de e-mail](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) 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 pelo usuário.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
e-mail corda O endereço de e-mail do usuário.
configurações de código de ação Configurações de ActionCode As configurações de ActionCode .

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()

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

A operação de login deve sempre ser concluída no aplicativo, ao contrário de outras ações de e-mail fora de banda (redefinição de senha e verificações de e-mail). Isso ocorre porque, ao final do fluxo, espera-se que o usuário esteja conectado e seu estado Auth persista no aplicativo.

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
autenticação Autenticação
e-mail corda O endereço de e-mail do usuário.
configurações de código de ação Configurações de ActionCode As configurações de ActionCode .

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);
}

setPersistência()

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

Isso torna mais fácil para um usuário que faz login especificar se sua sessão deve ser lembrada ou não. Também torna mais fácil nunca persistir o estado Auth para aplicativos que são compartilhados por outros usuários ou que possuem dados confidenciais.

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

Assinatura:

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

Parâmetros

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

Retorna:

Promessa<void>

Uma Promise que será resolvida assim que a mudança de persistência for concluída

Exemplo

setPersistence(auth, browserSessionPersistence);

Entrar como anônimo()

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

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

Assinatura:

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

Parâmetros

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

Retorna:

Promessa< CredencialdoUsuário >

signInWithCredential()

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

Um AuthProvider pode ser usado para gerar a credencial.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
credencial Credencial de autenticação A credencial de autenticação.

Retorna:

Promessa< CredencialdoUsuário >

signInWithCustomToken()

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

Os tokens personalizados são usados ​​para integrar o Firebase Auth aos sistemas de autenticação existentes e devem 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 aceito pelo serviço Firebase Auth.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
token personalizado corda O token personalizado para entrar.

Retorna:

Promessa< CredencialdoUsuário >

signInWithEmailAndPassword()

Faça login de forma assíncrona usando um e-mail e uma senha.

Falha com um erro se o endereço de e-mail e a senha não corresponderem. Quando a [Proteção de enumeração de e-mail](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) está ativada, esse método falha com "auth/invalid-credential" no caso de uma conta inválida. senha do e-mail.

Assinatura:

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

Parâmetros

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

Retorna:

Promessa< CredencialdoUsuário >

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

Se nenhum link for passado, o link será inferido do URL atual.

Falha com um erro se o endereço de e-mail for inválido ou o OTP no link de e-mail expirar.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
e-mail corda O endereço de e-mail do usuário.
e-mailLink corda O link enviado para o endereço de e-mail do usuário.

Retorna:

Promessa< CredencialdoUsuário >

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);
}

signInWithPhoneNumber()

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

Este método envia um código via SMS para o número de telefone fornecido e retorna um ConfirmationResult . Depois que o usuário fornecer o código enviado ao telefone, ligue para ConfirmationResult.confirm() com o código para fazer login do usuário.

Para prevenção de abuso, este método também requer um ApplicationVerifier . Este SDK inclui uma implementação baseada em reCAPTCHA, RecaptchaVerifier . Esta função pode funcionar em outras plataformas que não suportam o RecaptchaVerifier (como React Native), mas você precisa usar uma implementação ApplicationVerifier de terceiros.

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
número de telefone corda O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier Verificador de aplicativo O ApplicationVerifier .

Retorna:

Promessa< ConfirmaçãoResultado >

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);

signInWithPopup()

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

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Promessa< CredencialdoUsuário >

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()

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

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Prometo<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;

sair()

Desconecta o usuário atual.

Assinatura:

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

Parâmetros

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

Retorna:

Promessa<void>

atualizarUsuárioAtual()

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

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

Isso acionará os ouvintes 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.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
autenticação Autenticação A instância Auth .
do utilizador Usuário | nulo O novo usuário .

Retorna:

Promessa<void>

useDeviceLanguage()

Define o idioma atual para a preferência padrão do dispositivo/navegador.

Assinatura:

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

Parâmetros

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

Retorna:

vazio

validarSenha()

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

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

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, esse método usará a política mais recente disponível quando for chamado novamente.

Assinatura:

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

Parâmetros

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

Retorna:

Promessa< SenhaValidationStatus >

Exemplo

validatePassword(auth, 'some-password');

verificarPasswordResetCode()

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
autenticação Autenticação A instância Auth .
código corda 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()

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 corda

Retorna:

ActionCodeURL | nulo

deletar usuário()

Exclui e desconecta o usuário.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.

Retorna:

Promessa<void>

getIdToken()

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, isso atualizará o token e retornará um novo.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
forçar atualização boleano Forçar a atualização independentemente da expiração do token.

Retorna:

Promessa<string>

getIdTokenResult()

Retorna um JSON Web Token (JWT) desserializado 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, isso atualizará o token e retornará um novo.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
forçar atualização boleano Forçar a atualização independentemente da expiração do token.

Retorna:

Promessa< IdTokenResult >

linkWithCredential()

Vincula a conta do 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
do utilizador Do utilizador O usuário.
credencial Credencial de autenticação A credencial de autenticação.

Retorna:

Promessa< CredencialdoUsuário >

linkWithPhoneNumber()

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

Este 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
do utilizador Do utilizador O usuário.
número de telefone corda O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier Verificador de aplicativo O ApplicationVerifier .

Retorna:

Promessa< ConfirmaçãoResultado >

linkWithPopup()

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 conterá o usuário e a credencial do provedor.

Este 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
do utilizador Do utilizador O usuário.
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Promessa< CredencialdoUsuário >

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()

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

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Prometo<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()

O MultiFactorUser correspondente ao usuário.

Isso é usado para acessar todas as propriedades e operações multifatoriais relacionadas ao usuário.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.

Retorna:

MultiFactorUser

reautenticarWithCredential()

Autentica novamente um usuário usando uma nova credencial.

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
credencial Credencial de autenticação A credencial de autenticação.

Retorna:

Promessa< CredencialdoUsuário >

reautenticarWithPhoneNumber()

Autentica novamente um usuário usando uma nova credencial de telefone.

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
número de telefone corda O número de telefone do usuário no formato E.164 (por exemplo, +16505550101).
appVerifier Verificador de aplicativo O ApplicationVerifier .

Retorna:

Promessa< ConfirmaçãoResultado >

reautenticarWithPopup()

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

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Promessa< CredencialdoUsuário >

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);

reautenticarWithRedirect()

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

Para lidar com os resultados e erros desta operação, consulte getRedirectResult() . Siga as práticas recomendadas ao usar reauthenticateWithRedirect() .

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
fornecedor Provedor de autenticação O provedor a ser autenticado. O provedor deve ser um OAuthProvider . Provedores não OAuth, como EmailAuthProvider, gerarão um erro.
resolver PopupRedirectResolver Uma instância de PopupRedirectResolver , opcional se já fornecido para inicializeAuth() ou fornecido por getAuth() .

Retorna:

Prometo<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()

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.

Retorna:

Promessa<void>

sendEmailVerification()

Envia um e-mail de verificação para 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
do utilizador Do utilizador O usuário.
configurações de código de ação Configurações de ActionCode | nulo As configurações de ActionCode .

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
do utilizador Do utilizador O usuário.
ID do provedor corda O provedor a ser desvinculado.

Retorna:

Promessa< Usuário >

atualizarEmail()

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

Um e-mail será enviado para o endereço de e-mail original (se tiver sido definido) que permite revogar a alteração do endereço de e-mail, a fim de protegê-los contra roubo de conta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
Novo Email corda O novo endereço de e-mail. Gera o erro "auth/operation-not-allowed" quando a [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) está ativada. Obsoleto - Use verifyBeforeUpdateEmail() em vez disso.

Retorna:

Promessa<void>

Atualizar senha()

Atualiza a senha do usuário.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
Nova Senha corda A nova senha.

Retorna:

Promessa<void>

atualizarNúmeroTelefone()

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

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

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
do utilizador Do utilizador O usuário.
credencial Credencial PhoneAuth 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);

atualizar perfil()

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
do utilizador Do utilizador O usuário.
{ displayName, fotoURL: fotoUrl } { displayName?: string | nulo; fotoURL?: string | nulo; }

Retorna:

Promessa<void>

verifyBeforeUpdateEmail()

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 ser verificado.

Se você tiver um gerenciador de ações de e-mail personalizado, 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
do utilizador Do utilizador O usuário.
Novo Email corda O novo endereço de e-mail a ser verificado antes da atualização.
configurações de código de ação Configurações de ActionCode | nulo As configurações de ActionCode .

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);

getAdditionalUserInfo()

Extrai AdicionalUserInfo específico do provedor para a credencial fornecida.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
credencial do usuário Credencial de usuário A credencial do usuário.

Retorna:

Informações adicionais do usuário | nulo

ActionCodeOperação

Uma enumeração dos possíveis tipos de ação de email.

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";
}

Códigos de erro de autenticação

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

Observe que você não pode agitar chaves individuais no mapa; portanto, ao usar o mapa, você pode aumentar substancialmente 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";
}

navegadorLocalPersistence

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

Assinatura:

browserLocalPersistence: Persistence

navegadorPopupRedirectResolver

Uma implementação de PopupRedirectResolver adequada para aplicativos baseados em navegador.

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

Assinatura:

browserPopupRedirectResolver: PopupRedirectResolver

navegadorSessionPersistence

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

Assinatura:

browserSessionPersistence: Persistence

cordovaPopupRedirectResolver

Uma implementação de PopupRedirectResolver adequada para aplicativos baseados em Cordova.

Assinatura:

cordovaPopupRedirectResolver: PopupRedirectResolver

debugErrorMap

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

Veja a discussão em AuthErrorMap

Assinatura:

debugErrorMap: AuthErrorMap

ID do Fator

Uma enumeração de fatores que podem ser usados ​​para autenticação multifator.

Assinatura:

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

indexadoDBLocalPersistence

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

Tipo de operação

Enumeração de tipos de operação suportados.

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 suportados.

Assinatura:

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

Método SignIn

Enumeração de métodos de login suportados.

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 de parâmetros personalizados do OAuth.

Assinatura:

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

PróximoOrObservador

Definição de tipo para um retorno de chamada de evento.

Assinatura:

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

Opções de informações do telefone

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

As informações necessárias dependem se você está fazendo login de fator único, inscrição multifator ou login multifator.

Assinatura:

export declare type PhoneInfoOptions = PhoneSingleFactorInfoOptions | PhoneMultiFactorEnrollInfoOptions | PhoneMultiFactorSignInInfoOptions;

Perfil de usuário

Perfil de usuário usado em AdicionalUserInfo .

Assinatura:

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