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:
Configuración más sencilla
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 autenticaciones
Para anular el controlador predeterminado y proporcionar el tuyo, sigue estos pasos:
Conecta tu proyecto a un dominio personalizado. Para completar estos pasos, debes usar la consola de Firebase. No se admite el uso de la CLI de Google Cloud ni de la consola de Google Cloud .
Ve a la página Proveedores de identidades en la Google Cloud consola y selecciona tu proveedor de SAML. Ve a la página Proveedores de identidades.
Añade el dominio personalizado a la lista de Dominios autorizados.
Actualiza la URL de retrollamada con tu proveedor de identidades para usar tu dominio personalizado en lugar del dominio predeterminado. Por ejemplo, cambia
https://myproject.firebaseapp.com/__/auth/handler
porhttps://auth.mycustomdomain.com/__/auth/handler
.Haz clic en Guardar.
Actualizar la configuración del SDK del cliente
Web
Normalmente, puedes copiar el código de inicialización del SDK de cliente desde la
Google 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]");