auth package

Autenticazione Firebase

Funzioni

Funzione Descrizione
funzione(app, ...)
getAuth(app) Restituisce l'istanza Auth associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza un'istanza Auth con dipendenze predefinite specifiche della piattaforma.
inizializzaAuth(app, deps) Inizializza un'istanza di autenticazione con controllo capillare sulle dipendenze .
funzione (archiviazione, ...)
getReactNativePersistence(archiviazione) Restituisce un oggetto di persistenza che racchiude AsyncStorage importato da react-native o @react-native-community/async-storage e può essere utilizzato nel campo di dipendenza di persistenza in inizializzareAuth() .
funzione(autenticazione, ...)
applyActionCode(auth, oobCode) Applica un codice di verifica inviato all'utente tramite e-mail o altro meccanismo fuori banda.
primaAuthStateChanged(auth, callback, onAbort) Aggiunge un callback di blocco che viene eseguito prima che una modifica dello stato di autenticazione imposti un nuovo utente.
checkActionCode(auth, oobCode) Controlla un codice di verifica inviato all'utente tramite e-mail o altro meccanismo fuori banda.
confermaPasswordReset(auth, oobCode, nuovaPassword) Completa il processo di reimpostazione della password, fornendo un codice di conferma e una nuova password.
connectAuthEmulator(autenticazione, url, opzioni) Modifica l'istanza Auth per comunicare con l'emulatore Firebase Auth, anziché con i servizi Firebase Auth di produzione.
createUserWithEmailAndPassword(autenticazione, email, password) Crea un nuovo account utente associato all'indirizzo e-mail e alla password specificati.
fetchSignInMethodsForEmail(auth, email) Ottiene l'elenco dei possibili metodi di accesso per l'indirizzo di posta elettronica specificato. Questo metodo restituisce un elenco vuoto quando [Protezione enumerazione email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) è abilitata, indipendentemente dal numero di metodi di autenticazione disponibili per data email.
getMultiFactorResolver(autenticazione, errore) Fornisce un MultiFactorResolver adatto per il completamento di un flusso a più fattori.
getRedirectResult(auth, risolutore) Restituisce una UserCredential dal flusso di accesso basato sul reindirizzamento.
inizializzaRecaptchaConfig(auth) Carica la configurazione reCAPTCHA nell'istanza Auth .
isSignInWithEmailLink(auth, emailLink) Controlla se un collegamento in entrata è un accesso con collegamento e-mail adatto a signInWithEmailLink() .
onAuthStateChanged(auth, nextOrObserver, errore, completato) Aggiunge un osservatore per le modifiche allo stato di accesso dell'utente.
onIdTokenChanged(auth, nextOrObserver, errore, completato) Aggiunge un osservatore per le modifiche al token ID dell'utente che ha effettuato l'accesso.
revocaAccessToken(autenticazione, token) Revoca il token di accesso fornito. Attualmente supporta solo i token di accesso OAuth di Apple.
sendPasswordResetEmail(auth, email, actionCodeSettings) Invia un'e-mail di reimpostazione della password all'indirizzo e-mail specificato. Questo metodo non genera un errore quando non è presente un account utente con l'indirizzo email specificato e [Protezione enumerazione email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) è abilitata .
sendSignInLinkToEmail(autenticazione, email, actionCodeSettings) Invia un collegamento e-mail di accesso all'utente con l'e-mail specificata.
setPersistence(autenticazione, persistenza) Modifica il tipo di persistenza sull'istanza Auth per la sessione Auth attualmente salvata e applica questo tipo di persistenza per le future richieste di accesso, incluso l'accesso con richieste di reindirizzamento.
accedi in modo anonimo (autenticazione) Accede in modo asincrono come utente anonimo.
signInWithCredential(autenticazione, credenziale) Accede in modo asincrono con le credenziali specificate.
signInWithCustomToken(auth, customToken) Accedi in modo asincrono utilizzando un token personalizzato.
signInWithEmailAndPassword(autenticazione, email, password) Accedi in modo asincrono utilizzando un indirizzo e-mail e una password.
accediConEmailLink(autenticazione, email, emailLink) Accedi in modo asincrono utilizzando un messaggio e-mail e un collegamento e-mail di accesso.
signInWithPhoneNumber(auth, phoneNumber, appVerifier) Accedi in modo asincrono utilizzando un numero di telefono.
signInWithPopup(autenticazione, provider, risolutore) Autentica un client Firebase utilizzando un flusso di autenticazione OAuth basato su popup.
signInWithRedirect(auth, provider, risolutore) Autentica un client Firebase utilizzando un flusso di reindirizzamento a pagina intera.
esci(autenticazione) Disconnette l'utente corrente.
updateCurrentUser(auth, utente) Imposta in modo asincrono l'utente fornito come Auth.currentUser nell'istanza Auth .
useDeviceLanguage(auth) Imposta la lingua corrente sulla preferenza predefinita del dispositivo/browser.
validatePassword(autenticazione, password) Convalida la password rispetto ai criteri password configurati per il progetto o il tenant.
verificaPasswordResetCode(autenticazione, codice) Controlla un codice di reimpostazione della password inviato all'utente tramite e-mail o altro meccanismo fuori banda.
funzione(collegamento, ...)
parseActionCodeURL(link) Analizza la stringa del collegamento dell'azione e-mail e restituisce un ActionCodeURL se il collegamento è valido, altrimenti restituisce null.
funzione(utente, ...)
deleteUser(utente) Elimina e disconnette l'utente.
getIdToken(utente, forceRefresh) Restituisce un JSON Web Token (JWT) utilizzato per identificare l'utente in un servizio Firebase.
getIdTokenResult(utente, forceRefresh) Restituisce un token Web JSON (JWT) deserializzato utilizzato per identificare l'utente in un servizio Firebase.
linkWithCredential(utente, credenziale) Collega l'account utente con le credenziali specificate.
collegamentoConNumeroTelefono(utente, numerotelefono, appVerifier) Collega l'account utente al numero di telefono specificato.
linkWithPopup(utente, provider, risolutore) Collega il provider autenticato all'account utente utilizzando un flusso OAuth basato su popup.
linkWithRedirect(utente, provider, risolutore) Collega OAuthProvider all'account utente utilizzando un flusso di reindirizzamento a pagina intera.
multifattore(utente) Il MultiFactorUser corrispondente all'utente.
reauthenticateWithCredential(utente, credenziale) Autentica nuovamente un utente utilizzando una nuova credenziale.
riautenticazione con numero di telefono (utente, numero di telefono, appVerifier) Riautentica un utente utilizzando nuove credenziali telefoniche.
reauthenticateWithPopup(utente, provider, risolutore) Riautentica l'utente corrente con l' OAuthProvider specificato utilizzando un flusso OAuth basato su popup.
reauthenticateWithRedirect(utente, provider, risolutore) Riautentica l'utente corrente con l' OAuthProvider specificato utilizzando un flusso di reindirizzamento a pagina intera.
ricarica(utente) Ricarica i dati dell'account utente, se effettuato l'accesso.
sendEmailVerification(utente, actionCodeSettings) Invia un'e-mail di verifica a un utente.
scollega(utente, providerId) Scollega un fornitore da un account utente.
updateEmail(utente, nuovaEmail) Aggiorna l'indirizzo email dell'utente.
updatePassword(utente, nuovaPassword) Aggiorna la password dell'utente.
updatePhoneNumber(utente, credenziale) Aggiorna il numero di telefono dell'utente.
updateProfile(utente, { displayName, photoURL: photoUrl }) Aggiorna i dati del profilo di un utente.
verificareBeforeUpdateEmail(utente, nuovaEmail, actionCodeSettings) Invia un'e-mail di verifica a un nuovo indirizzo e-mail.
funzione(credenzialeutente, ...)
getAdditionalUserInfo(credenzialeutente) Estrae l'AdditionalUserInfo specifico del provider per la credenziale specificata.

Classi

Classe Descrizione
URLCodiceAzione Una classe di utilità per analizzare gli URL delle azioni e-mail come la reimpostazione della password, la verifica dell'e-mail, l'accesso tramite collegamento e-mail, ecc.
CredenzialiAut Interfaccia che rappresenta le credenziali restituite da un AuthProvider .
EmailAuthCredential Interfaccia che rappresenta le credenziali restituite da EmailAuthProvider per ProviderId .PAROLA D'ORDINE
EmailAuthProvider Provider per la generazione di EmailAuthCredential .
FacebookAuthProvider Provider per generare un OAuthCredential per ProviderId .FACEBOOK.
GithubAuthProvider Provider per generare un OAuthCredential per ProviderId .GITHUB.
GoogleAuthProvider Provider per generare un OAuthCredential per ProviderId .GOOGLE.
OAuthCredential Rappresenta le credenziali OAuth restituite da un OAuthProvider .
OAuthProvider Provider per la generazione di OAuthCredential generico .
PhoneAuthCredential Rappresenta le credenziali restituite da PhoneAuthProvider .
PhoneAuthProvider Provider per la generazione di un PhoneAuthCredential .
PhoneMultiFactorGenerator Provider per la generazione di un PhoneMultiFactorAssertion .
RecaptchaVerifier Un reCAPTCHA verificatore di applicazioni basato su.
SAMLAuthProvider Un AuthProvider per SAML.
TotpMultiFactorGenerator Provider per generare una TotpMultiFactorAssertion .
TotpSecret Provider per generare una TotpMultiFactorAssertion . Memorizza la chiave segreta condivisa e altri parametri per generare OTP basate sul tempo. Implementa metodi per recuperare la chiave segreta condivisa e generare un URL del codice QR.
TwitterAuthProvider Provider per generare un OAuthCredential per ProviderId .TWITTER.

Interfacce

Interfaccia Descrizione
ActionCodeInfo Una risposta da checkActionCode() .
ImpostazioniCodiceAzione Un'interfaccia che definisce l'URL di continuazione/stato richiesto con identificatori di bundle Android e iOS facoltativi.
Informazioni utente aggiuntive Una struttura contenente informazioni utente aggiuntive da un provider di identità federato.
ApplicationVerifier Un verificatore per la verifica del dominio e la prevenzione degli abusi.
Aut Interfaccia che rappresenta il servizio Firebase Auth.
AuthError Interfaccia per un errore Auth .
AuthErrorMap Una mappatura dei codici di errore sui messaggi di errore.
AuthProvider Interfaccia che rappresenta un provider di autenticazione, utilizzata per facilitare la creazione di AuthCredential .
ImpostazioniAut Interfaccia che rappresenta le impostazioni di un'istanza di autenticazione .
Configurazione Interfaccia che rappresenta la configurazione Auth .
Risultato conferma Un risultato di un numero di telefono di accesso, collegamento o riautenticazione della chiamata.
Dipendenze Le dipendenze che possono essere utilizzate per inizializzare un'istanza Auth .
EmulatorConfig Configurazione dell'emulatore di autenticazione Firebase.
Risultato IdToken Interfaccia che rappresenta il risultato del token ID ottenuto da User.getIdTokenResult() .
Asserzione multifattoriale La classe base per affermare la proprietà di un secondo fattore.
Errore multifattoriale L'errore generato quando l'utente deve fornire un secondo fattore per accedere correttamente.
MultiFactorInfo Una struttura contenente le informazioni di una seconda entità fattore.
MultiFactorResolver La classe utilizzata per facilitare il ripristino da MultiFactorError quando un utente deve fornire un secondo fattore per accedere.
Sessione MultiFactor Un'interfaccia che definisce l'oggetto sessione a più fattori utilizzato per registrare un secondo fattore su un utente o facilitare l'accesso di un utente registrato con un secondo fattore.
Utente MultiFactor Un'interfaccia che definisce le proprietà e le operazioni correlate a più fattori relative a un Utente .
OAuthCredentialOptions Definisce le opzioni per l'inizializzazione di un OAuthCredential .
ParsedToken Interfaccia che rappresenta un token ID analizzato.
Politica della password Una struttura che specifica i requisiti della politica della password.
Stato convalida password Una struttura che indica quali requisiti della policy password sono stati soddisfatti o violati e quali sono i requisiti.
Persistenza Un'interfaccia che copre i possibili tipi di meccanismi di persistenza.
PhoneMultiFactorAssertion La classe per affermare la proprietà di un secondo fattore telefonico. Fornito da PhoneMultiFactorGenerator.assertion() .
PhoneMultiFactorEnrollInfoOptions Opzioni utilizzate per iscrivere un secondo fattore.
TelefonoMultiFactorInfo La sottoclasse dell'interfaccia MultiFactorInfo per i secondi fattori del numero di telefono. Il factorId di questo secondo fattore è FactorId .TELEFONO.
PhoneMultiFactorSignInInfoOpzioni Opzioni utilizzate per l'accesso con un secondo fattore.
PhoneSingleFactorInfoOptions Opzioni utilizzate per l'accesso a fattore singolo.
PopupRedirectResolver Un risolutore utilizzato per gestire operazioni specifiche del DOM come signInWithPopup() o signInWithRedirect() .
ReactNativeAsyncStorage Interfaccia per un AsyncStorage fornito.
RecaptchaParametri Interfaccia che rappresenta i parametri reCAPTCHA. Consulta la [documentazione reCAPTCHA](https://developers.google.com/recaptcha/docs/display#render_param) per l'elenco dei parametri accettati. Tutti i parametri sono accettati tranne sitekey : Firebase Auth fornisce un reCAPTCHA per ogni progetto e configurerà la chiave del sito al momento del rendering. Per un reCAPTCHA invisibile, imposta la chiave size su invisible .
TotpMultiFactorAssertion La classe per affermare la proprietà di un secondo fattore TOTP. Fornito da TotpMultiFactorGenerator.assertionForEnrollment() e TotpMultiFactorGenerator.assertionForSignIn() .
TotpMultiFactorInfo La sottoclasse dell'interfaccia MultiFactorInfo per i fattori secondi TOTP. Il factorId di questo secondo fattore è FactorId .TOTP.
Utente Un account utente.
Credenziali utente Una struttura contenente un User , OperationType e l'ID del provider.
Informazioni utente Informazioni sul profilo utente, visibili solo alle app del progetto Firebase.
Metadatiutente Interfaccia che rappresenta i metadati di un utente.

Variabili

Variabile Descrizione
ActionCodeOperazione Un'enumerazione dei possibili tipi di azioni email.
AuthErrorCodes Una mappa di potenziali codici di errore Auth , per un confronto più semplice con gli errori generati dall'SDK.
browserLocalPersistence Un'implementazione di Persistence di tipo LOCAL che utilizza localStorage per l'archiviazione sottostante.
browserPopupRedirectResolver Un'implementazione di PopupRedirectResolver adatta per applicazioni basate su browser.
browserSessionPersistenza Un'implementazione di Persistence of SESSION utilizzando sessionStorage per l'archiviazione sottostante.
cordovaPopupRedirectResolver Un'implementazione di PopupRedirectResolver adatta per applicazioni basate su Cordova.
debugErrorMap Una mappa degli errori dettagliata con descrizioni dettagliate per la maggior parte dei codici di errore. Vedi la discussione su AuthErrorMap
ID fattore Un'enumerazione di fattori che possono essere utilizzati per l'autenticazione a più fattori.
IndexedDBLocalPersistence Un'implementazione di Persistence di tipo LOCAL che utilizza indexedDB per l'archiviazione sottostante.
inMemoryPersistence Un'implementazione di Persistenza di tipo 'NONE'.
TipoOperazione Enumerazione dei tipi di operazioni supportati.
prodErrorMap Una mappa di errore minima con tutti i messaggi di errore dettagliati eliminati. Vedi la discussione su AuthErrorMap
ProviderId Enumerazione dei provider supportati.
Metodo di accesso Enumerazione dei metodi di accesso supportati.

Digitare Alias

Digita Alias Descrizione
Parametri personalizzati Mappa dei parametri personalizzati OAuth.
SuccessivoOrObserver Definizione del tipo per un callback di evento.
OpzioniInformazioniTelefono Le informazioni necessarie per verificare la proprietà di un numero di telefono.
Profilo utente Profilo utente utilizzato in AdditionalUserInfo .

funzione(app, ...)

getAuth(app)

Restituisce l'istanza Auth associata alla FirebaseApp fornita . Se non esiste alcuna istanza, inizializza un'istanza Auth con dipendenze predefinite specifiche della piattaforma.

Firma:

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

Parametri

Parametro Tipo Descrizione
app FirebaseApp L'app Firebase.

Ritorna:

Aut

inizializzaAuth(app, deps)

Inizializza un'istanza di autenticazione con controllo capillare sulle dipendenze .

Questa funzione consente un maggiore controllo sull'istanza Auth rispetto a getAuth() . getAuth utilizza le impostazioni predefinite specifiche della piattaforma per fornire le dipendenze . In generale, getAuth è il modo più semplice per inizializzare Auth e funziona per la maggior parte dei casi d'uso. Utilizza initializeAuth se hai bisogno di controllo su quale livello di persistenza viene utilizzato o per ridurre al minimo le dimensioni del pacchetto se non utilizzi signInWithPopup o signInWithRedirect .

Ad esempio, se la tua app utilizza solo account anonimi e desideri salvare solo gli account per la sessione corrente, inizializza Auth con:

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

Firma:

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

Parametri

Parametro Tipo Descrizione
app FirebaseApp
dipende Dipendenze

Ritorna:

Aut

funzione (archiviazione, ...)

getReactNativePersistence(archiviazione)

Restituisce un oggetto di persistenza che racchiude AsyncStorage importato da react-native o @react-native-community/async-storage e può essere utilizzato nel campo della dipendenza di persistenza in inizializzareAuth() .

Firma:

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

Parametri

Parametro Tipo Descrizione
magazzinaggio ReactNativeAsyncStorage

Ritorna:

Persistenza

funzione(autenticazione, ...)

applyActionCode(auth, oobCode)

Applica un codice di verifica inviato all'utente tramite e-mail o altro meccanismo fuori banda.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
oobCode corda Un codice di verifica inviato all'utente.

Ritorna:

Promesso<vuoto>

primaAuthStateChanged(auth, callback, onAbort)

Aggiunge un callback di blocco che viene eseguito prima che una modifica dello stato di autenticazione imposti un nuovo utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
richiamare (utente: Utente | null) => void | Promesso<vuoto> la richiamata viene attivata prima dell'impostazione del nuovo valore utente. Se questo genera un'eccezione, impedisce l'impostazione dell'utente.
onAbort () => vuoto il callback viene attivato se viene generato un callback beforeAuthStateChanged() successivo, consentendo di annullare eventuali effetti collaterali.

Ritorna:

Annulla l'iscrizione

checkActionCode(auth, oobCode)

Controlla un codice di verifica inviato all'utente tramite e-mail o altro meccanismo fuori banda.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
oobCode corda Un codice di verifica inviato all'utente.

Ritorna:

Promessa< ActionCodeInfo >

metadati sul codice.

confermaPasswordReset(auth, oobCode, nuovaPassword)

Completa il processo di reimpostazione della password, fornendo un codice di conferma e una nuova password.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
oobCode corda Un codice di conferma inviato all'utente.
nuova password corda La nuova parola d'ordine.

Ritorna:

Promesso<vuoto>

connectAuthEmulator(autenticazione, url, opzioni)

Modifica l'istanza Auth per comunicare con l'emulatore Firebase Auth, anziché con i servizi Firebase Auth di produzione.

Questo deve essere chiamato in modo sincrono immediatamente dopo la prima chiamata a inizializzareAuth() . Non utilizzare con credenziali di produzione poiché il traffico dell'emulatore non è crittografato.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
URL corda L'URL su cui è in esecuzione l'emulatore (ad esempio, 'http://localhost:9099').
opzioni {disableWarnings: boolean; } Opzionale. options.disableWarnings ha come valore predefinito false . Impostalo su true per disabilitare il banner di avviso allegato al DOM.

Ritorna:

vuoto

Esempio

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

createUserWithEmailAndPassword(autenticazione, email, password)

Crea un nuovo account utente associato all'indirizzo e-mail e alla password specificati.

Una volta creata con successo l'account utente, questo utente accederà anche alla tua applicazione.

La creazione dell'account utente può non riuscire se l'account esiste già o se la password non è valida.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mail corda L'indirizzo email dell'utente.
parola d'ordine corda La password scelta dall'utente.

Ritorna:

Promessa < Credenziali utente >

fetchSignInMethodsForEmail(auth, email)

Ottiene l'elenco dei possibili metodi di accesso per l'indirizzo di posta elettronica specificato. Questo metodo restituisce un elenco vuoto quando [Protezione enumerazione email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) è abilitata, indipendentemente dal numero di metodi di autenticazione disponibili per data email.

Ciò è utile per differenziare i metodi di accesso per lo stesso provider, ad es. EmailAuthProvider che ha 2 metodi di accesso, SignInMethod .EMAIL_PASSWORD e metodo di accesso .EMAIL_LINK.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mail corda L'indirizzo email dell'utente. Deprecato. La migrazione da questo metodo è consigliata come procedura consigliata per la sicurezza. Scopri di più nella documentazione di Identity Platform per [Protezione dell'enumerazione delle email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection).

Ritorna:

Promesso<string[]>

getMultiFactorResolver(autenticazione, errore)

Fornisce un MultiFactorResolver adatto per il completamento di un flusso a più fattori.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
errore Errore multifattoriale L' oggetto MultiFactorError generato durante un'operazione di accesso o di riautenticazione.

Ritorna:

MultiFactorResolver

getRedirectResult(auth, risolutore)

Restituisce una UserCredential dal flusso di accesso basato sul reindirizzamento.

Se l'accesso è riuscito, restituisce l'utente che ha effettuato l'accesso. Se l'accesso non ha avuto esito positivo, viene restituito un errore. Se non è stata chiamata alcuna operazione di reindirizzamento, restituisce null .

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
risolutore PopupRedirectResolver Un'istanza di PopupRedirectResolver , facoltativo se già fornito a inizializzareAuth() o fornito da getAuth() .

Ritorna:

Promessa< Credenziali utente | nullo>

Esempio

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

inizializzaRecaptchaConfig(auth)

Carica la configurazione reCAPTCHA nell'istanza Auth .

Ciò caricherà la configurazione di reCAPTCHA, che indica se il flusso di verifica di reCAPTCHA deve essere attivato per ciascun provider di autenticazione, nella sessione di autenticazione corrente.

Se inizializzareRecaptchaConfig() non viene richiamato, il flusso di autenticazione verrà sempre avviato senza verifica reCAPTCHA. Se il provider è configurato per richiedere la verifica reCAPTCHA, l'SDK caricherà in modo trasparente la configurazione di reCAPTCHA e riavvierà i flussi di autenticazione.

Pertanto, chiamando questo metodo facoltativo, ridurrai la latenza dei futuri flussi di autenticazione. Il caricamento anticipato della configurazione di reCAPTCHA migliorerà anche il segnale raccolto da reCAPTCHA.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .

Ritorna:

Promesso<vuoto>

Esempio

initializeRecaptchaConfig(auth);

Controlla se un collegamento in entrata è un accesso con collegamento e-mail adatto a signInWithEmailLink() .

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mailLink corda Il collegamento inviato all'indirizzo email dell'utente.

Ritorna:

booleano

onAuthStateChanged(auth, nextOrObserver, errore, completato)

Aggiunge un osservatore per le modifiche allo stato di accesso dell'utente.

Per mantenere il vecchio comportamento, vedere onIdTokenChanged() .

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
nextOrObserver SuccessivoOrObserver < Utente > richiamata attivata in caso di modifica.
errore ErrorFn Deprecato. Questa richiamata non viene mai attivata. Gli errori di accesso/disconnessione possono essere rilevati nelle promesse restituite dalle funzioni di accesso/disconnessione.
completato CompletaFn Deprecato. Questa richiamata non viene mai attivata.

Ritorna:

Annulla l'iscrizione

onIdTokenChanged(auth, nextOrObserver, errore, completato)

Aggiunge un osservatore per le modifiche al token ID dell'utente che ha effettuato l'accesso.

Sono inclusi gli eventi di accesso, disconnessione e aggiornamento del token. Questo non verrà attivato automaticamente alla scadenza del token ID. Utilizza User.getIdToken() per aggiornare il token ID.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
nextOrObserver SuccessivoOrObserver < Utente > richiamata attivata in caso di modifica.
errore ErrorFn Deprecato. Questa richiamata non viene mai attivata. Gli errori di accesso/disconnessione possono essere rilevati nelle promesse restituite dalle funzioni di accesso/disconnessione.
completato CompletaFn Deprecato. Questa richiamata non viene mai attivata.

Ritorna:

Annulla l'iscrizione

revocaAccessToken(autenticazione, token)

Revoca il token di accesso fornito. Attualmente supporta solo i token di accesso OAuth di Apple.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
gettone corda Il token di accesso OAuth di Apple.

Ritorna:

Promesso<vuoto>

sendPasswordResetEmail(auth, email, actionCodeSettings)

Invia un'e-mail di reimpostazione della password all'indirizzo e-mail specificato. Questo metodo non genera un errore quando non è presente un account utente con l'indirizzo email specificato e [Protezione enumerazione email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) è abilitata .

Per completare la reimpostazione della password, chiamare confirmPasswordReset() con il codice fornito nell'e-mail inviata all'utente, insieme alla nuova password specificata dall'utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mail corda L'indirizzo email dell'utente.
actionCodeSettings ImpostazioniCodiceAzione Le impostazioni ActionCodeSettings .

Ritorna:

Promesso<vuoto>

Esempio

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(autenticazione, email, actionCodeSettings)

Invia un collegamento e-mail di accesso all'utente con l'e-mail specificata.

L'operazione di accesso deve essere sempre completata nell'app a differenza di altre azioni e-mail fuori banda (reimpostazione della password e verifiche e-mail). Questo perché, alla fine del flusso, è previsto che l'utente abbia effettuato l'accesso e che il suo stato di autenticazione sia persistente all'interno dell'app.

Per completare l'accesso con il collegamento e-mail, chiamare signInWithEmailLink() con l'indirizzo e-mail e il collegamento e-mail forniti nell'e-mail inviata all'utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut
e-mail corda L'indirizzo email dell'utente.
actionCodeSettings ImpostazioniCodiceAzione Le impostazioni ActionCode .

Ritorna:

Promesso<vuoto>

Esempio

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(autenticazione, persistenza)

Modifica il tipo di persistenza sull'istanza Auth per la sessione Auth attualmente salvata e applica questo tipo di persistenza per le future richieste di accesso, incluso l'accesso con richieste di reindirizzamento.

Ciò rende semplice per un utente che effettua l'accesso specificare se la propria sessione deve essere ricordata o meno. Rende inoltre più semplice non rendere mai persistente lo stato Auth per le applicazioni condivise da altri utenti o che contengono dati sensibili.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
persistenza Persistenza La persistenza da utilizzare.

Ritorna:

Promesso<vuoto>

Una Promise che si risolve una volta completata la modifica della persistenza

Esempio

setPersistence(auth, browserSessionPersistence);

accedi in modo anonimo (autenticazione)

Accede in modo asincrono come utente anonimo.

Se esiste già un utente anonimo che ha effettuato l'accesso, quell'utente verrà restituito; in caso contrario, verrà creata e restituita una nuova identità utente anonima.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .

Ritorna:

Promessa < Credenziali utente >

signInWithCredential(autenticazione, credenziale)

Accede in modo asincrono con le credenziali specificate.

È possibile utilizzare un AuthProvider per generare la credenziale.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
credenziali CredenzialiAut La credenziale di autenticazione.

Ritorna:

Promessa < Credenziali utente >

accediConCustomToken(auth, customToken)

Accedi in modo asincrono utilizzando un token personalizzato.

I token personalizzati vengono utilizzati per integrare Firebase Auth con i sistemi di autenticazione esistenti e devono essere generati da un backend di autenticazione utilizzando il metodo createCustomToken nell'Admin SDK .

Fallisce con un errore se il token non è valido, è scaduto o non è accettato dal servizio Firebase Auth.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
customToken corda Il token personalizzato con cui accedere.

Ritorna:

Promessa < Credenziali utente >

signInWithEmailAndPassword(autenticazione, email, password)

Accedi in modo asincrono utilizzando un indirizzo e-mail e una password.

Fallisce con un errore se l'indirizzo email e la password non corrispondono. Quando [Protezione enumerazione email](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection) è abilitata, questo metodo fallisce con "auth/invalid-credential" in caso di valore non valido e-mail/password.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mail corda L'indirizzo e-mail degli utenti.
parola d'ordine corda La password degli utenti.

Ritorna:

Promessa < Credenziali utente >

Accedi in modo asincrono utilizzando un messaggio e-mail e un collegamento e-mail di accesso.

Se non viene passato alcun collegamento, il collegamento viene dedotto dall'URL corrente.

Fallisce con un errore se l'indirizzo e-mail non è valido o l'OTP nel collegamento e-mail scade.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
e-mail corda L'indirizzo email dell'utente.
e-mailLink corda Il collegamento inviato all'indirizzo email dell'utente.

Ritorna:

Promessa < Credenziali utente >

Esempio

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)

Accedi in modo asincrono utilizzando un numero di telefono.

Questo metodo invia un codice via SMS al numero di telefono specificato e restituisce un risultato di conferma . Dopo che l'utente ha fornito il codice inviato al proprio telefono, chiama confirmationresult.confirm() con il codice per far accedere l'utente.

Per la prevenzione degli abusi, questo metodo richiede anche un ApplicationVerifier . Questo SDK include un'implementazione basata su reCAPTCHA, RecaptchaVerifier . Questa funzione può funzionare su altre piattaforme che non supportano RecaptchaVerifier (come React Native), ma è necessario utilizzare un'implementazione ApplicationVerifier di terze parti.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
numero di telefono corda Il numero di telefono dell'utente in formato E.164 (es. +16505550101).
appVerifier ApplicationVerifier L' ApplicationVerifier .

Ritorna:

Promessa< ConfermaRisultato >

Esempio

// '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(autenticazione, provider, risolutore)

Autentica un client Firebase utilizzando un flusso di autenticazione OAuth basato su popup.

In caso di esito positivo, restituisce l'utente che ha effettuato l'accesso insieme alle credenziali del provider. Se l'accesso non ha avuto esito positivo, restituisce un oggetto errore contenente informazioni aggiuntive sull'errore.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
fornitore AuthProvider Il provider da autenticare. Il provider deve essere un OAuthProvider . I provider non OAuth come EmailAuthProvider genereranno un errore.
risolutore PopupRedirectResolver Un'istanza di PopupRedirectResolver , facoltativo se già fornito a inizializzareAuth() o fornito da getAuth() .

Ritorna:

Promessa < Credenziali utente >

Esempio

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

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

signInWithRedirect(auth, provider, risolutore)

Autentica un client Firebase utilizzando un flusso di reindirizzamento a pagina intera.

Per gestire i risultati e gli errori di questa operazione, fare riferimento a getRedirectResult() . Segui le migliori pratiche quando usi signInWithRedirect() .

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
fornitore AuthProvider Il provider da autenticare. Il provider deve essere un OAuthProvider . I provider non OAuth come EmailAuthProvider genereranno un errore.
risolutore PopupRedirectResolver Un'istanza di PopupRedirectResolver , facoltativo se già fornito a inizializzareAuth() o fornito da getAuth() .

Ritorna:

Promesso<mai>

Esempio

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

esci(autenticazione)

Disconnette l'utente corrente.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .

Ritorna:

Promesso<vuoto>

updateCurrentUser(auth, utente)

Imposta in modo asincrono l'utente fornito come Auth.currentUser nell'istanza Auth .

Verrà creata una nuova copia dell'istanza dell'utente fornito e impostata come currentUser.

Ciò attiverà i listener onAuthStateChanged() e onIdTokenChanged() come altri metodi di accesso.

L'operazione fallisce con un errore se l'utente da aggiornare appartiene a un progetto Firebase diverso.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
utente Utente | nullo Il nuovo Utente .

Ritorna:

Promesso<vuoto>

useDeviceLanguage(auth)

Imposta la lingua corrente sulla preferenza predefinita del dispositivo/browser.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .

Ritorna:

vuoto

validatePassword(autenticazione, password)

Convalida la password rispetto ai criteri password configurati per il progetto o il tenant.

Se non è impostato alcun ID tenant sull'istanza Auth , questo metodo utilizzerà la policy password configurata per il progetto. In caso contrario, questo metodo utilizzerà la policy configurata per il tenant. Se non è stata configurata una policy password, verrà utilizzata la policy predefinita configurata per tutti i progetti.

Se un flusso di autenticazione fallisce perché una password inviata non soddisfa i requisiti della policy password e questo metodo è stato precedentemente chiamato, questo metodo utilizzerà la policy più recente disponibile quando verrà richiamato nuovamente.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
parola d'ordine corda La password da convalidare.

Ritorna:

Promessa< PasswordValidationStatus >

Esempio

validatePassword(auth, 'some-password');

verificaPasswordResetCode(autenticazione, codice)

Controlla un codice di reimpostazione della password inviato all'utente tramite e-mail o altro meccanismo fuori banda.

Firma:

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

Parametri

Parametro Tipo Descrizione
aut Aut L'istanza Auth .
codice corda Un codice di verifica inviato all'utente.

Ritorna:

Promesso<string>

l'indirizzo email dell'utente, se valido.

parseActionCodeURL(link)

Analizza la stringa del collegamento dell'azione e-mail e restituisce un ActionCodeURL se il collegamento è valido, altrimenti restituisce null.

Firma:

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

Parametri

Parametro Tipo Descrizione
collegamento corda

Ritorna:

URLCodiceAzione | nullo

funzione(utente, ...)

deleteUser(utente)

Elimina e disconnette l'utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.

Ritorna:

Promesso<vuoto>

getIdToken(utente, forceRefresh)

Restituisce un JSON Web Token (JWT) utilizzato per identificare l'utente in un servizio Firebase.

Restituisce il token corrente se non è scaduto o se non scadrà nei prossimi cinque minuti. Altrimenti, questo aggiornerà il token e ne restituirà uno nuovo.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
forceRefresh booleano Forza l'aggiornamento indipendentemente dalla scadenza del token.

Ritorna:

Promesso<string>

getIdTokenResult(utente, forceRefresh)

Restituisce un token Web JSON (JWT) deserializzato utilizzato per identificare l'utente in un servizio Firebase.

Restituisce il token corrente se non è scaduto o se non scadrà nei prossimi cinque minuti. Altrimenti, questo aggiornerà il token e ne restituirà uno nuovo.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
forceRefresh booleano Forza l'aggiornamento indipendentemente dalla scadenza del token.

Ritorna:

Promessa< IdTokenResult >

linkWithCredential(utente, credenziale)

Collega l'account utente con le credenziali specificate.

È possibile utilizzare un AuthProvider per generare la credenziale.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
credenziali CredenzialiAut La credenziale di autenticazione.

Ritorna:

Promessa < Credenziali utente >

collegamentoConNumeroTelefono(utente, numerotelefono, appVerifier)

Collega l'account utente al numero di telefono specificato.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
numero di telefono corda Il numero di telefono dell'utente in formato E.164 (es. +16505550101).
appVerifier ApplicationVerifier L' ApplicationVerifier .

Ritorna:

Promessa< ConfermaRisultato >

linkWithPopup(utente, provider, risolutore)

Collega il provider autenticato all'account utente utilizzando un flusso OAuth basato su popup.

Se il collegamento ha esito positivo, il risultato restituito conterrà l'utente e le credenziali del provider.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
fornitore AuthProvider Il provider da autenticare. Il provider deve essere un OAuthProvider . I provider non OAuth come EmailAuthProvider genereranno un errore.
risolutore PopupRedirectResolver Un'istanza di PopupRedirectResolver , facoltativo se già fornito a inizializzareAuth() o fornito da getAuth() .

Ritorna:

Promessa < Credenziali utente >

Esempio

// 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(utente, provider, risolutore)

Collega OAuthProvider all'account utente utilizzando un flusso di reindirizzamento a pagina intera.

Per gestire i risultati e gli errori di questa operazione, fare riferimento a getRedirectResult() . Segui le migliori pratiche quando usi linkWithRedirect() .

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
fornitore AuthProvider Il provider da autenticare. Il provider deve essere un OAuthProvider . I provider non OAuth come EmailAuthProvider genereranno un errore.
risolutore PopupRedirectResolver Un'istanza di PoppredirettreSolver , facoltativo se già fornito a inizializeauth () o fornito da getAuth () .

Ritorna:

Promise <Never>

Esempio

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

Multifactor (utente)

Il multifattore corrispondente all'utente.

Questo viene utilizzato per accedere a tutte le proprietà e operazioni multi-fattori relative all'utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.

Ritorna:

Multifattore

reauthenicatewithcredential (utente, credenziale)

Riautentica un utente utilizzando una nuova credenziale.

Utilizzare prima delle operazioni come UpdatePassword () che richiedono token dai recenti tentativi di accesso. Questo metodo può essere utilizzato per recuperare da un errore CREDENTIAL_TOO_OLD_LOGIN_AGAIN o un errore TOKEN_EXPIRED .

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
credenziali Autenticazione La credenziale di AUT.

Ritorna:

Promise < UserCredential >

reauthenicatewithphonenumber (utente, fonenumber, apparificatore)

Riautentica un utente utilizzando una nuova credenziale del telefono.

Utilizzare prima delle operazioni come UpdatePassword () che richiedono token dai recenti tentativi di accesso.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
numero di telefono corda Il numero di telefono dell'utente in formato E.164 (EG +16505550101).
Apprerifier APPLICAZIONEVERIFIER Il verificatore dell'applicazione .

Ritorna:

Promessa < Conferma Result >

reauthenicatewithpopup (utente, provider, resolver)

Riautorezza l'utente attuale con OAuthProvider specificato utilizzando un flusso OAuth basato su pop-up.

Se la riautenticazione ha esito positivo, il risultato restituito conterrà l'utente e le credenziali del provider.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
fornitore AuthProvider Il provider di autenticazione. Il fornitore deve essere un oauthprovider . I provider non oauth come EmailAuthProvider lanceranno un errore.
risolver Poppredirettresolver Un'istanza di PoppredirettreSolver , facoltativo se già fornito a inizializeauth () o fornito da getAuth () .

Ritorna:

Promise < UserCredential >

Esempio

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

ReauthenicateWithredirect (utente, provider, resolver)

Reautentica l'utente attuale con OAuthProvider specificato utilizzando un flusso di reindirizzamento a pagina intera.

Per gestire i risultati e gli errori per questa operazione, fare riferimento a getrediRectresult () . Segui le migliori pratiche quando si utilizza reauthenicateWithredirect () .

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
fornitore AuthProvider Il provider di autenticazione. Il fornitore deve essere un oauthprovider . I provider non oauth come EmailAuthProvider lanceranno un errore.
risolver Poppredirettresolver Un'istanza di PoppredirettreSolver , facoltativo se già fornito a inizializeauth () o fornito da getAuth () .

Ritorna:

Promise <Never>

Esempio

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

Ricarica (utente)

Ricarica i dati dell'account utente, se firmato.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.

Ritorna:

Promise <void>

sendemailverification (utente, actioncodettings)

Invia un'e -mail di verifica a un utente.

Il processo di verifica viene completato chiamando ApplicaCActCode () .

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
Actioncodettings ActionCodesettings | nullo I codetting di Action .

Ritorna:

Promise <void>

Esempio

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

Unga un provider da un account utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
Providerid corda Il fornitore di Unkking.

Ritorna:

Promessa < utente >

UpdateMail (utente, neo -email)

Aggiorna l'indirizzo e -mail dell'utente.

Verrà inviata un'e -mail all'indirizzo e -mail originale (se è stato impostato) che consente di revocare la modifica dell'indirizzo e -mail, al fine di proteggerli dal dirottamento dell'account.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
nuova email corda Il nuovo indirizzo email. Lancia un errore "Auth/Operation-NOT-Balloted" quando [Email Enumeration Protection] (https://cloud.google.com/Identity-Platform/docs/admin/email-enumeration-rotection) è abilitato. Deprecated - Usa VerifyBeForUpDateEmail () invece.

Ritorna:

Promise <void>

UpdatePassword (utente, newpassword)

Aggiorna la password dell'utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
nuova password corda La nuova password.

Ritorna:

Promise <void>

UpdatePhonenumber (utente, credenziale)

Aggiorna il numero di telefono dell'utente.

Questo metodo non funziona in un ambiente Node.js.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
credenziali Foneauthcredential Una credenziale che autentica il nuovo numero di telefono.

Ritorna:

Promise <void>

Esempio

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

UpdateProfile (User, {DisplayName, Photourl: Photourl})

Aggiorna i dati del profilo di un utente.

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
{DisplayName, Photourl: Photourl} {DisplayName?: String | nullo; Photourl?: String | nullo; }

Ritorna:

Promise <void>

VerifyBeforeUpDateEmail (utente, neo -eMail, Actioncodettings)

Invia un'e -mail di verifica a un nuovo indirizzo e -mail.

L'e -mail dell'utente verrà aggiornata a quella nuova dopo essere stata verificata.

Se si dispone di un gestore di azioni e -mail personalizzato, è possibile completare il processo di verifica chiamando ApplicaCactCode () .

Firma:

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

Parametri

Parametro Tipo Descrizione
utente Utente L'utente.
nuova email corda Il nuovo indirizzo e -mail da verificare prima dell'aggiornamento.
Actioncodettings ActionCodesettings | nullo I codetting di Action .

Ritorna:

Promise <void>

Esempio

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

funzione (usercredential, ...)

getAdditionalUserInfo (UserCredential)

Estrai Provider specifico aggiuntivoUserInfo per le credenziali fornite.

Firma:

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

Parametri

Parametro Tipo Descrizione
UserCredential UserCredential Le credenziali dell'utente.

Ritorna:

Aggiuntivouserinfo | nullo

ActionCodeoperation

Un enumerazione dei possibili tipi di azione e -mail.

Firma:

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

Una mappa di potenziali codici di errore Auth , per un confronto più semplice con gli errori lanciati dall'SDK.

Nota che non è possibile Shake Tree singoli tasti nella mappa, quindi utilizzando la mappa è possibile aumentare sostanzialmente la dimensione del pacchetto.

Firma:

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

browserlocalperstence

Un'implementazione della persistenza del tipo LOCAL utilizzando localStorage per lo spazio di archiviazione sottostante.

Firma:

browserLocalPersistence: Persistence

browserpopupredirettresolver

Un'implementazione di PoppreDirecreSolver adatto per applicazioni basate sul browser.

Questo metodo non funziona in un ambiente Node.js.

Firma:

browserPopupRedirectResolver: PopupRedirectResolver

browsersessionpersistence

Un'implementazione della persistenza della SESSION utilizzando sessionStorage per l'archiviazione sottostante.

Firma:

browserSessionPersistence: Persistence

CORDOVAPOPREDERETRILVER

Un'implementazione di PoppreDirecreSolver adatto per applicazioni basate su Cordova.

Firma:

cordovaPopupRedirectResolver: PopupRedirectResolver

DebugerRormap

Una mappa di errore verbose con descrizioni dettagliate per la maggior parte dei codici di errore.

Vedi la discussione su Autherrormap

Firma:

debugErrorMap: AuthErrorMap

Fattoreide

Un enum di fattori che possono essere utilizzati per l'autenticazione multifattore.

Firma:

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

indiceddblocalperstence

Un'implementazione della persistenza di tipo LOCAL utilizzando indexedDB per l'archiviazione sottostante.

Firma:

indexedDBLocalPersistence: Persistence

inmemorypersistence

Un'attuazione della persistenza del tipo "nessuno".

Firma:

inMemoryPersistence: Persistence

OperationType

Enumerazione dei tipi di operazione supportati.

Firma:

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

proderrormap

Una mappa di errore minima con tutti i messaggi di errore verbosio sono rimossi.

Vedi la discussione su Autherrormap

Firma:

prodErrorMap: AuthErrorMap

Providerid

Enumerazione dei fornitori supportati.

Firma:

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

SigninMethod

Enumerazione dei metodi di accesso supportati.

Firma:

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

Parametri personalizzati

Mappa dei parametri personalizzati OAuth.

Firma:

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

Nextorobserver

Digitare la definizione per un callback dell'evento.

Firma:

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

PhoneInFooptions

Le informazioni necessarie per verificare la proprietà di un numero di telefono.

Le informazioni richieste dipendono dal fatto che tu stia facendo l'accesso a fattore singolo, l'iscrizione a più fattori o l'accesso a più fattori.

Firma:

export declare type PhoneInfoOptions = PhoneSingleFactorInfoOptions | PhoneMultiFactorEnrollInfoOptions | PhoneMultiFactorSignInInfoOptions;

Profilo utente

Profilo utente utilizzato in aggiuntivoUserInfo .

Firma:

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