Visualizzazione di un dominio personalizzato durante l'accesso

Questo documento spiega come personalizzare l'handler di autenticazione di Identity Platform in modo che gli utenti vedano il tuo dominio quando accedono.

Informazioni sul gestore dell'autenticazione predefinito

Quando attivi Identity Platform per il tuo progetto, viene creato automaticamente un sottodominio unico basato su Firebase Hosting. Il dominio ha il formato https://[PROJECT-ID].firebaseapp.com. Per impostazione predefinita, Identity Platform utilizza questo dominio per gestire tutti i reindirizzamenti di accesso OAuth, OIDC e SAML.

L'utilizzo del dominio predefinito presenta diversi vantaggi:

  • Configurazione più semplice

  • Utilizza più domini con gli stessi provider federati

  • Condividi un singolo URL di callback tra diversi servizi e domini

  • Funziona con i fornitori che supportano un solo URL di callback per app

Lo svantaggio del gestore predefinito è che gli utenti vedranno brevemente il https://[PROJECT-ID].firebaseapp.com URL durante l'accesso.

Personalizzazione del gestore di autenticazione

Per eseguire l'override del gestore predefinito e fornire il tuo:

  1. Collega il progetto a un dominio personalizzato. Dovrai completare questi passaggi utilizzando la console Firebase. utilizzando Google Cloud CLI o la console Google Cloud supportati.

  2. Vai alla pagina Provider di identità nella console Google Cloud e seleziona il tuo provider SAML. Vai alla pagina Provider di identità

  3. Aggiungi il dominio personalizzato all'elenco dei domini autorizzati.

  4. Aggiorna l'URL di callback con il tuo provider di identità per utilizzare lo script invece che con quello predefinito. Ad esempio, cambia https://myproject.firebaseapp.com/__/auth/handler in https://auth.mycustomdomain.com/__/auth/handler.

  5. Fai clic su Salva.

Aggiornamento della configurazione dell'SDK client

Web

Normalmente, puoi copiare il codice di inizializzazione per l'SDK del client dalla nella console Google Cloud. Se personalizzi il gestore di autenticazione, devi aggiornare il campo authDomain con il tuo dominio personalizzato:

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

Versione 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

Per personalizzare il gestore di autenticazione, utilizza il seguente codice:

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