Auth interface

Interfaz que representa el servicio Firebase Auth.

Consulta Firebase Authentication para obtener una guía completa sobre cómo usar el servicio Firebase Auth.

Signature:

export interface Auth 

Propiedades

Propiedad Tipo Descripción
app FirebaseApp La FirebaseApp asociada con la instancia de servicio Auth.
config Configuración El Config que se usó para inicializar esta instancia.
currentUser Usuario | nulo El usuario que accedió (o nulo)
emulatorConfig EmulatorConfig | nulo Es la configuración actual del emulador (o nula).
languageCode cadena | nulo El código de idioma de la instancia de Auth.
name cadena El nombre de la app asociada con la instancia de servicio Auth.
configuración AuthSettings La configuración de la instancia Auth.
tenantId cadena | nulo El ID de usuario de la instancia Auth.

Métodos

Método Descripción
authStateReady() muestra una promesa que se resuelve de inmediato cuando se establece el estado de autenticación inicial. Cuando se resuelve la promesa, el usuario actual puede ser un usuario válido o null si el usuario salió de la cuenta.
beforeAuthStateChanged(callback, onAbort) Agrega una devolución de llamada de bloqueo que se ejecuta antes de que un cambio de estado de autenticación establezca un usuario nuevo.
onAuthStateChanged(nextOrObserver, error, completed) Agrega un observador para los cambios en el estado de acceso del usuario.
onIdTokenChanged(nextOrObserver, error, completed) Agrega un observador para los cambios en el token de ID del usuario que accedió.
setPersistence(persistence) Cambia el tipo de persistencia en la instancia Auth.
signOut() Cierra la sesión del usuario actual. Esto no revoca automáticamente el token de ID del usuario.
updateCurrentUser(user) Configura de forma asíncrona el usuario proporcionado como Auth.currentUser en la instancia de Auth.
useDeviceLanguage() Establece el idioma actual como la preferencia predeterminada de dispositivo o navegador.

Auth.app

La FirebaseApp asociada con la instancia de servicio Auth.

Signature:

readonly app: FirebaseApp;

Auth.config

El Config que se usó para inicializar esta instancia.

Signature:

readonly config: Config;

Auth.currentUser

El usuario que accedió (o nulo)

Signature:

readonly currentUser: User | null;

Auth.emulatorConfig

Es la configuración actual del emulador (o nula).

Signature:

readonly emulatorConfig: EmulatorConfig | null;

Auth.languageCode

El código de idioma de la instancia de Auth.

Esta es una propiedad que admite escritura y lectura. Cuando se configura como nulo, se aplica el parámetro de configuración de idioma predeterminado de Firebase console. El código de idioma se propagará a las plantillas de acciones de correo electrónico (restablecimiento de contraseñas, verificación de correo electrónico y revocación de cambios de correo electrónico), plantillas de SMS para la autenticación telefónica, verificador reCAPTCHA y operaciones de redireccionamiento o ventana emergente de OAuth, siempre que los proveedores especificados admitan la localización con el código de idioma especificado.

Signature:

languageCode: string | null;

Auth.name

El nombre de la app asociada con la instancia de servicio Auth.

Signature:

readonly name: string;

Auth.settings

La configuración de la instancia Auth.

Se usa para editar o leer opciones relacionadas con la configuración, como el modo de verificación de apps para la autenticación por teléfono.

Signature:

readonly settings: AuthSettings;

Auth.tenantId

El ID de usuario de la instancia Auth.

Esta es una propiedad que admite escritura y lectura. Cuando estableces el ID de usuario de una instancia de Auth, todas las operaciones de acceso o registro futuras pasarán este ID de usuario y permitirán que los usuarios accedan o registren el proyecto en el proyecto de usuario especificado. Cuando se configura como nulo, los usuarios acceden al proyecto superior.

Signature:

tenantId: string | null;

Ejemplo

// Set the tenant ID on Auth instance.
auth.tenantId = 'TENANT_PROJECT_ID';

// All future sign-in request now include tenant ID.
const result = await signInWithEmailAndPassword(auth, email, password);
// result.user.tenantId should be 'TENANT_PROJECT_ID'.

Auth.authStateReady()

muestra una promesa que se resuelve de inmediato cuando se establece el estado de autenticación inicial. Cuando se resuelve la promesa, el usuario actual puede ser un usuario válido o null si el usuario salió de la cuenta.

Signature:

authStateReady(): Promise<void>;

Devuelve:

Promise<void>

Auth.beforeAuthStateChanged()

Agrega una devolución de llamada de bloqueo que se ejecuta antes de que un cambio de estado de autenticación establezca un usuario nuevo.

Signature:

beforeAuthStateChanged(callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
callback (user: User | null) => void | Promise<void> Se activa la devolución de llamada antes de que se establezca un valor de usuario nuevo. Si se produce este error, se bloqueará la configuración del usuario.
onAbort () => vacío. Se activa la devolución de llamada si se genera una devolución de llamada beforeAuthStateChanged() posterior, lo que te permite deshacer los efectos secundarios.

Devuelve:

Anular la suscripción

Auth.onAuthStateChanged()

Agrega un observador para los cambios en el estado de acceso del usuario.

Para mantener el comportamiento anterior, consulta Auth.onIdTokenChanged().

Signature:

onAuthStateChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
nextOrObserver NextOrObserver<User | null> se activa la devolución de llamada cuando hay un cambio.
error ErrorFn Ya no está disponible. Esta devolución de llamada nunca se activa. Los errores de acceso y salida pueden verse en las promesas que se muestran a partir de las funciones de acceso y cierre de sesión.
completados CompleteFn Ya no está disponible. Esta devolución de llamada nunca se activa.

Devuelve:

Anular la suscripción

Auth.onIdTokenChanged()

Agrega un observador para los cambios en el token de ID del usuario que accedió.

Esto incluye eventos de acceso, cierre de sesión y actualización de token.

Signature:

onIdTokenChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
nextOrObserver NextOrObserver<User | null> se activa la devolución de llamada cuando hay un cambio.
error ErrorFn Ya no está disponible. Esta devolución de llamada nunca se activa. Los errores de acceso y salida pueden verse en las promesas que se muestran a partir de las funciones de acceso y cierre de sesión.
completados CompleteFn Ya no está disponible. Esta devolución de llamada nunca se activa.

Devuelve:

Anular la suscripción

Auth.setPersistence()

Cambia el tipo de persistencia en la instancia Auth.

Esto afectará la sesión de Auth guardada actualmente y aplica este tipo de persistencia para futuras solicitudes de acceso, incluido el acceso con solicitudes de redireccionamiento.

De esta manera, es más fácil para los usuarios que acceden especificar si sus sesiones deben recordarse o no. También facilita la conservación del estado de autenticación nunca para las aplicaciones que comparten otros usuarios o que tienen datos sensibles.

Este método no funciona en un entorno de Node.js.

Signature:

setPersistence(persistence: Persistence): Promise<void>;

Parámetros

Parámetro Tipo Descripción
persistencia Persistencia La Persistencia que se usará.

Devuelve:

Promise<void>

Ejemplo

auth.setPersistence(browserSessionPersistence);

Auth.signOut()

Cierra la sesión del usuario actual. Esto no revoca automáticamente el token de ID del usuario.

Este método no es compatible con las instancias de Auth creadas con una FirebaseServerApp.

Signature:

signOut(): Promise<void>;

Devuelve:

Promise<void>

Auth.updateCurrentUser()

Configura de forma asíncrona el usuario proporcionado como Auth.currentUser en la instancia de Auth.

Se creará una copia de instancia nueva del usuario proporcionado y se establecerá como currentUser.

Esto activará los objetos de escucha Auth.onAuthStateChanged() y Auth.onIdTokenChanged() como otros métodos de acceso.

La operación falla y muestra un error si el usuario que se actualizará pertenece a otro proyecto de Firebase.

Signature:

updateCurrentUser(user: User | null): Promise<void>;

Parámetros

Parámetro Tipo Descripción
usuario Usuario | nulo El nuevo User.

Devuelve:

Promise<void>

Auth.useDeviceLanguage()

Establece el idioma actual como la preferencia predeterminada de dispositivo o navegador.

Signature:

useDeviceLanguage(): void;

Devuelve:

void