Firebase Authentication
Firebase Authentication proporciona servicios de backend, SDK fáciles de usar y bibliotecas de IU ya elaboradas para autenticar a los usuarios en tu app. Admite la autenticación mediante contraseñas, números de teléfono, proveedores de identidad federada populares, como Google, Facebook y Twitter, y mucho más.
Firebase Authentication se integra estrechamente con otros servicios de Firebase y aprovecha estándares de la industria, como OAuth 2.0 y OpenID Connect, por lo que se puede integrar con facilidad en tu backend personalizado.
Cuando actualizas a Firebase Authentication with Identity Platform, obtienes acceso a funciones adicionales, como la autenticación de varios factores, las funciones de bloqueo,los registros de auditoría y de la actividad del usuario, la compatibilidad con SAML y proveedores genéricos de OpenID Connect, la funcionalidad multiusuario y la asistencia de nivel empresarial.
Funciones clave
Puedes permitir que los usuarios accedan a tu app de Firebase con FirebaseUI como una solución completa de autenticación directa o mediante el SDK de Firebase Authentication para integrar manualmente uno o varios métodos de acceso en tu app.
FirebaseUI Auth | |
---|---|
Solución de autenticación directa |
La forma recomendada de agregar un sistema de acceso completo a tu app. FirebaseUI proporciona una solución de autenticación directa que controla los flujos de IU para los usuarios que acceden con direcciones de correo electrónico y contraseñas, números de teléfono y con proveedores de identidad federada populares, que incluyen el Acceso con Google y el Acceso con Facebook. El componente de FirebaseUI Auth implementa prácticas recomendadas para la autenticación en sitios web y dispositivos móviles, lo que puede maximizar la conversión de acceso y registro de tu app. También maneja casos extremos, como la recuperación y la vinculación de cuentas, que pueden tener repercusiones en la seguridad y ser propensos a generar errores cuando se intenta manejarlos correctamente. FirebaseUI puede personalizarse fácilmente para adaptarse al resto del estilo visual de tu app. Además, es de código abierto, por lo que no tendrás limitaciones para lograr la experiencia de usuario que deseas. |
Autenticación del SDK de Firebase | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Autenticación basada en correo electrónico y contraseña | Autentica a los usuarios con sus direcciones de correo electrónico y contraseñas. El SDK de Firebase Authentication proporciona métodos para crear y administrar usuarios que usan sus direcciones de correo electrónico y contraseñas para acceder. Firebase Authentication también controla el envío de correos electrónicos para restablecer la contraseña. |
||||||||||
Integración con proveedores de identidad federada | Autentica usuarios mediante la integración con proveedores de identidad federada. El SDK de Firebase Authentication proporciona métodos que permiten a los usuarios acceder con sus cuentas de Google, Facebook, Twitter y GitHub.
|
||||||||||
Autenticación con número de teléfono | Envía mensajes SMS a los teléfonos de los usuarios para autenticarlos. |
||||||||||
Integración de sistemas de autenticación personalizados |
Conecta el sistema de acceso existente de tu app al SDK de Firebase Authentication y obtén acceso a Firebase Realtime Database y otros servicios de Firebase. |
||||||||||
Autenticación anónima | Crea cuentas anónimas temporales para permitir el uso de funciones que requieran autenticación sin exigir que los usuarios accedan primero. Si posteriormente el usuario opta por registrarse, puedes actualizar la cuenta anónima y convertirla en una normal, de manera que el usuario pueda reanudar la actividad donde la interrumpió. |
Firebase Authentication with Identity Platform
Firebase Authentication with Identity Platform es una actualización opcional que agrega varias funciones nuevas a Firebase Authentication.
Esta actualización no requiere ningún tipo de migración: el SDK cliente y el código del SDK de Admin actuales seguirán funcionando como antes y obtendrás acceso inmediato a funciones como el registro mejorado, la asistencia de nivel empresarial y los ANS. Con código adicional, podrás agregar autenticación de varios factores, funciones de bloqueo y compatibilidad con proveedores de OpenID Connect y SAML.
Firebase Authentication with Identity Platform tiene un esquema de precios diferente al del producto base. Cuando se realice la actualización, los proyectos del plan sin costo (Spark) se limitarán a 3,000 usuarios activos por día y los del plan de pago por uso (Blaze) se cobrarán por el uso que supere el nivel gratuito de 50,000 usuarios activos por mes. Asegúrate de comprender las implicaciones de facturación antes de actualizar.
Sigue leyendo para obtener más información sobre los nuevos precios, límites y funciones.
Funciones
Autenticación de varios factores |
La autenticación de varios factores con SMS protege los datos de los usuarios agregando una segunda capa de seguridad a tu app. Aprende a agregar la MFA a tus apps para Apple y Android, así como a las apps web. |
Funciones de bloqueo |
Las funciones de bloqueo permiten ejecutar código personalizado que modifica lo que ocurre cuando un usuario se registra en tu app o accede a ella. Aprende a extender Firebase Authentication con funciones de bloqueo. |
Proveedores de OpenID Connect y SAML |
Admite el acceso mediante proveedores de SAML (solo para la Web) y OpenID Connect que no son compatibles de forma nativa con Firebase. Aprende a agregar el acceso con SAML a apps web y el acceso con OpenID Connect a apps para Apple y Android, así como a apps web. |
Actividad del usuario y registro de auditoría |
Supervisa y registra el acceso de los administradores y la actividad de los usuarios finales. Cuando actualizas tu proyecto, se habilitan automáticamente los registros de auditoría de actividad de los administradores en Cloud Logging. También puedes habilitar el registro de actividad del usuario en la página Configuración de Authentication de Firebase console. Consulta la documentación de Cloud Logging para aprender a visualizar y analizar tus registros. |
Prevención de abusos con App Check |
App Check ayuda a proteger tu proyecto contra los abusos, ya que impide que clientes no autorizados accedan a tus extremos de autenticación. Para obtener información sobre cómo habilitar App Check, consulta la documentación de App Check. |
Multiusuario |
Si utilizas usuarios, puedes crear múltiples entornos y parámetros de configuración aislados para ellos en un solo proyecto. Consulta Comienza a usar la funcionalidad multiusuario en la documentación de Cloud Identity Platform. |
ANS y asistencia para empresas |
Los proyectos actualizados obtienen garantías de tiempo de actividad para los servicios de Auth según el Acuerdo de Nivel de Servicio (ANS) de Identity Platform y acceso a asistencia de nivel empresarial. |
Limpieza automática de usuarios anónimos |
Tendrás la opción de habilitar la eliminación automática de las cuentas anónimas si tienen más de treinta días. Las cuentas anónimas ya no se tendrán en cuenta para la facturación y las cuotas de uso. |
Límites de uso
Después de la actualización, Firebase Authentication with Identity Platform presenta nuevos límites en el uso de Firebase Authentication.
Sin costo (Spark)
Los proyectos del plan sin costo (Spark) tienen un nuevo límite de 3,000 usuarios activos por día (DAU) para la mayoría de los proveedores de acceso. Esta métrica se calcula en función de la cantidad de usuarios únicos que acceden en un período de 24 horas.
Proveedores | Límite nuevo | Límite anterior |
---|---|---|
Correo electrónico, redes sociales, anónimo y personalizado | 3,000 DAU | Ilimitado |
SAML y OpenID Connect | 2 DAU | N/A |
Pago por uso (Blaze)
El precio de los proyectos en el plan Blaze se basa en los usuarios activos por mes (MAU) y, además, incluye un nivel sin costo de 50,000 usuarios. Un usuario activo corresponde a cualquier persona que utiliza su cuenta dentro del período de facturación.
Proveedores | Nivel sin costo | Costo ($) por MAU cuando se supera el nivel sin costo |
---|---|---|
Correo electrónico, redes sociales, anónimo y personalizado | De 0 a 49,999 MAU | De 0.0025 a 0.0055 por MAU |
SAML y OpenID Connect | De 0 a 49 MAU | 0.015 por MAU |
Actualizar tu proyecto
Para actualizar tu proyecto a Firebase Authentication with Identity Platform, abre la página Configuración de Authentication de Firebase console.
¿Cómo funciona?
Para que un usuario acceda a tu app, primero debes obtener credenciales de autenticación del usuario. Estas credenciales pueden ser la dirección de correo electrónico y la contraseña del usuario, o un token OAuth de un proveedor de identidad federada. Luego, pasa estas credenciales al SDK de Firebase Authentication. Después, nuestros servicios de backend verificarán esas credenciales y mostrarán una respuesta al cliente.
Cuando el acceso se realiza correctamente, puedes ver la información básica del perfil del usuario y controlar el acceso del usuario a los datos almacenados en otros productos de Firebase. También puedes utilizar el token de autenticación proporcionado para verificar la identidad de los usuarios en tus propios servicios de backend.
Rutas de acceso de implementación
Usar FirebaseUI Auth | ||
---|---|---|
Configurar métodos de acceso | Para el acceso con dirección de correo electrónico y contraseña o número de teléfono, así como para cualquier proveedor de identidad federada que desees admitir, realiza la habilitación en Firebase console y completa la configuración requerida por el proveedor de identidad; por ejemplo, establecer la URL de redireccionamiento de OAuth. | |
Personalizar la IU de acceso | Puedes personalizar la IU de acceso mediante la configuración de opciones de FirebaseUI o bifurcar el código en GitHub para personalizar más la experiencia de acceso. | |
Utilizar FirebaseUI para el flujo de acceso | Importa la biblioteca de FirebaseUI, especifica los métodos de acceso que desees admitir y, luego, inicia el flujo de acceso de FirebaseUI. |
Usando el SDK Firebase Authentication | ||
---|---|---|
Configurar métodos de acceso | Para el acceso con dirección de correo electrónico y contraseña o número de teléfono, así como para cualquier proveedor de identidad federada que desees admitir, realiza la habilitación en Firebase console y completa la configuración requerida por el proveedor de identidad; por ejemplo, establecer la URL de redireccionamiento de OAuth. | |
Implementar flujos de IU para tus métodos de acceso | Para el acceso con dirección de correo electrónico y contraseña, implementa un flujo en que solicites a los usuarios escribir sus direcciones de correo electrónico y contraseñas. Para el acceso con número de teléfono, crea un flujo que les solicite a los usuarios su número de teléfono y después el código del mensaje SMS que reciban. Para el acceso federado, implementa el flujo que requiera cada proveedor. | |
Pasar las credenciales del usuario al SDK de Firebase Authentication | Pasa la dirección de correo electrónico y la contraseña del usuario o el token de OAuth que se recibió del proveedor de identidad federada al SDK de Firebase Authentication. |
¿Qué sigue?
Obtén más información sobre los usuarios de un proyecto de Firebase y, luego, consulta las guías de introducción de la plataforma y los proveedores de acceso que deseas admitir:
iOS+ Android Web Flutter Unity C++ Admin
¿No sabes por dónde empezar?