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(ligação, ...) | |
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 . |
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.
Assinatura:
export declare function getAuth(app?: FirebaseApp): Auth;
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
aplicativo | Aplicativo Firebase | O aplicativo Firebase. |
Retorna:
inicializeAuth(aplicativo, dependências)
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 será 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:
função (armazenamento, ...)
getReactNativePersistence(armazenamento)
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:
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.
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(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.
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:
checkActionCode(auth, oobCode)
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(auth, oobCode, newPassword)
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(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.
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(autenticação, email, senha)
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 . |
corda | O endereço de e-mail do usuário. | |
senha | corda | A senha escolhida pelo usuário. |
Retorna:
Promessa< Credencial do usuário >
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.
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 . |
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(autenticação,erro)
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:
getRedirectResult(auth, resolvedor)
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(auth)
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);
isSignInWithEmailLink(auth, emailLink)
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(auth, nextOrObserver, erro, concluído)
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:
onIdTokenChanged(auth, nextOrObserver, erro, concluído)
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:
revokeAccessToken(autenticação, token)
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(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 .
Para completar 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 . |
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(auth, email, actionCodeSettings)
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 | |
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 do 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);
}
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.
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 anonimamente (auth)
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(auth, credencial)
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(auth, customToken)
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< Credencial do usuário >
signInWithEmailAndPassword(autenticação, email, senha)
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 . |
corda | O endereço de e-mail dos usuários. | |
senha | corda | A senha dos usuários. |
Retorna:
Promessa< CredencialdoUsuário >
signInWithEmailLink(auth, email, emailLink)
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 . |
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(auth, phoneNumber, appVerifier)
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(auth, provedor, resolvedor)
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ção, provedor, resolvedor)
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 (autenticação)
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>
updateCurrentUser(auth, usuário)
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(auth)
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(autenticação, senha)
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');
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.
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.
função(ligação, ...)
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.
Assinatura:
export declare function parseActionCodeURL(link: string): ActionCodeURL | null;
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
link | corda |
Retorna:
ActionCodeURL | nulo
função(usuário, ...)
deletarUsuário(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(usuário, 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, 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(usuário, forceRefresh)
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(usuário, credencial)
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(usuário, telefoneNumber, appVerifier)
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(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 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(usuário, provedor, resolvedor)
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 (usuário)
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:
ReAuthenticateWithCredential (usuário, credencial)
Re-autentica um usuário usando uma nova credencial.
Use antes de operações como o UpdatePassword () que requerem tokens de tentativas de login recentes. Este método pode ser usado para se recuperar de um erro CREDENTIAL_TOO_OLD_LOGIN_AGAIN
ou 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 | Authcredential | A credencial de autenticação. |
Retorna:
Promessa < usercredential >
ReAuthenticateWithphoneNumber (usuário, PhoneNumber, AppVerriFier)
Re-autentica um usuário usando uma nova credencial de telefone.
Use antes de operações como o UpdatePassword () que requerem tokens de tentativas de login recentes.
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 | ApplicationVerifier | O ApplicationVerriFier . |
Retorna:
Promessa < confirmationResult >
reauthenticateWithPopup (usuário, provedor, resolvedor)
Reutentica 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 | AuthProvider | O provedor para autenticar. O provedor deve ser um oauthprovider . Provedores que não são OAuth como o emailAuthProvider lançarão um erro. |
resolver | PopuPredirecterSolver | Uma instância de PopuPredirecterSolver , opcional se já fornecido à 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);
ReAuthenticateWithRedirect (usuário, provedor, resolvedor)
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 para esta operação, consulte o GetRedirecTRESULT () . Siga as práticas recomendadas ao usar reauthenticateWithReect () .
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 | AuthProvider | O provedor para autenticar. O provedor deve ser um oauthprovider . Provedores que não são OAuth como o emailAuthProvider lançarão um erro. |
resolver | PopuPredirecterSolver | Uma instância de PopuPredirecterSolver , opcional se já fornecido à InitializeAuth () ou fornecido por getAuth () . |
Retorna:
Promise <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)
Recarregue os dados da conta de usuário, se assinado.
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>
SendEmailverificação (usuário, ActionCodeSettings)
Envia um email de verificação para um usuário.
O processo de verificação é concluído chamando ApplActionCode () .
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. |
ActionCodesettings | ActionCodeSettings | nulo | Os codos de ação . |
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);
UNLIGH PLAIN (Usuário, ProviderID)
UNLINKS 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. |
provider | corda | O provedor desvincular. |
Retorna:
Promessa < usuário >
UpdateMail (Usuário, Newemail)
Atualiza o endereço de e -mail do usuário.
Um email será enviado para o endereço de e -mail original (se estiver definido) que permita revogar a alteração do endereço de e -mail, a fim de protegê -los do seqüestro de contas.
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. Lança o erro "Auth/Operação não-Areled" quando [Proteção de enumeração por email] (https://cloud.google.com/identity-platform/docs/admin/email-enumation-protection) está ativado. Depreciado - use verifique -se parapDateEmail () . |
Retorna:
Promessa <Void>
UpdatePassword (Usuário, NewPassword)
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>
UpdatePhoneNumber (usuário, credencial)
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 | Phoneauthcredential | Uma credencial autenticando 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 (Usuário, {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 |
---|---|---|
do utilizador | Do utilizador | O usuário. |
{DisplayName, fotourl: fotourl} | {DisplayName?: String | nulo; fotourl?: string | nulo; } |
Retorna:
Promessa <Void>
Verifique se o correio (Usuário, Newemail, ActionCodeSettings)
Envia um email de verificação para um novo endereço de e -mail.
O email do usuário será atualizado para o novo após ser verificado.
Se você possui um manipulador de ação de email personalizado, pode concluir o processo de verificação chamando ApplActionCode () .
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. |
ActionCodesettings | ActionCodeSettings | nulo | Os codos de ação . |
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);
função (USERCREDENCIAL, ...)
getAddicionalUserinfo (UserCredential)
Extrair provedor específico adicionalUserinfo para a credencial fornecida.
Assinatura:
export declare function getAdditionalUserInfo(userCredential: UserCredential): AdditionalUserInfo | null;
Parâmetros
Parâmetro | Tipo | Descrição |
---|---|---|
UserCredential | UserCredential | A credencial do usuário. |
Retorna:
AdicionalUserinfo | nulo
ActionCodeoperation
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";
}
AuthErrorCodes
Um mapa de códigos de erro Auth
em potencial, para facilitar a comparação com os erros lançados pelo SDK.
Observe que você não pode modelar as teclas individuais do mapa no mapa; portanto, usando o mapa, você pode aumentar substancialmente o tamanho do seu 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 da persistência do tipo LOCAL
usando localStorage
para o armazenamento subjacente.
Assinatura:
browserLocalPersistence: Persistence
BrowSerpopuPredirecTerSolver
Uma implementação do PopuPredirecterSolver adequado para aplicativos baseados no navegador.
Este método não funciona em um ambiente Node.js.
Assinatura:
browserPopupRedirectResolver: PopupRedirectResolver
BrowsSessionPerSistência
Uma implementação da persistência da SESSION
usando sessionStorage
para o armazenamento subjacente.
Assinatura:
browserSessionPersistence: Persistence
CordovapopuPredirecterSolver
Uma implementação do PopuPredirecterSolver adequado para aplicações baseadas em Cordova.
Assinatura:
cordovaPopupRedirectResolver: PopupRedirectResolver
DepurRorMap
Um mapa de erro detalhado com descrições detalhadas para a maioria dos códigos de erro.
Veja discussão no AutherRorMap
Assinatura:
debugErrorMap: AuthErrorMap
Fatorid
Um enumeração de fatores que podem ser usados para autenticação multifatorial.
Assinatura:
FactorId: {
readonly PHONE: "phone";
readonly TOTP: "totp";
}
IndexedDBlocalPersistência
Uma implementação da persistência do tipo LOCAL
usando indexedDB
para o armazenamento subjacente.
Assinatura:
indexedDBLocalPersistence: Persistence
InMemoryPersistência
Uma implementação de persistência do tipo 'nenhum'.
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 mínimo de erro com todas as mensagens de erro detalhadas despojadas.
Veja discussão no AutherRorMap
Assinatura:
prodErrorMap: AuthErrorMap
Provider
Enumeração de fornecedores 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";
}
SigninMethod
Enumeração de métodos de assinatura 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";
}
CustomParameters
Mapa dos parâmetros personalizados do OAuth.
Assinatura:
export declare type CustomParameters = Record<string, string>;
NextorObServer
Digite Definição para um retorno de chamada de evento.
Assinatura:
export declare type NextOrObserver<T> = NextFn<T | null> | Observer<T | null>;
PhoneInFooptions
As informações necessárias para verificar a propriedade de um número de telefone.
As informações necessárias depende se você está fazendo inscrição de um fator único, inscrição de vários fatores ou inscrição multi-fator.
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>;