Mostrar un dominio personalizado durante el inicio de sesión
En este documento se explica cómo personalizar el controlador de autenticación de Identity Platform para que los usuarios vean tu dominio al iniciar sesión.
Acerca del controlador de autenticación predeterminado
Cuando habilitas Identity Platform en tu proyecto, se crea automáticamente un subdominio único con la tecnología de Firebase Hosting.
El dominio tiene el formato https://[PROJECT-ID].firebaseapp.com
.
De forma predeterminada, Identity Platform usa este dominio para gestionar todas las redirecciones de inicio de sesión de OAuth, OIDC y SAML.
Usar el dominio predeterminado tiene varias ventajas:
Usar varios dominios con los mismos proveedores federados
Compartir una única URL de retrollamada en diferentes servicios y dominios
Funciona con proveedores que solo admiten una URL de retrollamada por aplicación
El inconveniente del controlador predeterminado es que los usuarios verán brevemente la URL https://[PROJECT-ID].firebaseapp.com
al iniciar sesión.
Personalizar el controlador de autenticación
Para sustituir el controlador predeterminado por el tuyo, haz lo siguiente:
En la consola de Firebase, conecta tu proyecto a un dominio personalizado.
En la Google Cloud consola, ve a la página Identity Platform > Proveedores de identidades.
Ve a Proveedores de identidadesSelecciona tu proveedor de identidades.
En el panel lateral Configuración del proyecto, haz clic en Añadir dominio y añade tu dominio personalizado.
Haz clic en Guardar.
En la configuración de tu aplicación, actualiza la URL de retrollamada con tu dominio personalizado en lugar del dominio predeterminado. Por ejemplo, cambia
https://myproject.firebaseapp.com/__/auth/handler
porhttps://auth.mycustomdomain.com/__/auth/handler
.
Actualizar la configuración del SDK del cliente
Web
Puedes copiar el código de inicialización del SDK de cliente desde laGoogle Cloud consola. Si personalizas el controlador de autenticación, tendrás que actualizar el campo authDomain
con tu dominio personalizado:
Versión web 9
import { initializeApp } from "firebase/app"; const firebaseConfig = { apiKey: "...", // By default, authDomain is '[YOUR_APP].firebaseapp.com'. // You may replace it with a custom domain. authDomain: '[YOUR_CUSTOM_DOMAIN]' }; const firebaseApp = initializeApp(firebaseConfig);
Versión web 8
firebase.initializeApp({ apiKey: '...', // By default, authDomain is '[YOUR_APP].firebaseapp.com'. // You may replace it with a custom domain. authDomain: '[YOUR_CUSTOM_DOMAIN]' });
Android e iOS
Para personalizar el controlador de autenticación, usa el siguiente código:
Java
FirebaseAuth.getInstance().setCustomAuthDomain("[YOUR_CUSTOM_DOMAIN]");
Kotlin+KTX
Firebase.auth.setCustomAuthDomain("[YOUR_CUSTOM_DOMAIN]")
Swift
let auth = Auth.auth()
auth.customAuthDomain = "[YOUR_CUSTOM_DOMAIN]"
Objective‑C
FIRAuth *auth = [FIRAuth auth];
auth.customAuthDomain("[YOUR_CUSTOM_DOMAIN]");