Migrer la connexion par lien e-mail depuis Firebase Dynamic Links (iOS)

L'authentification par lien d'e-mail reposait auparavant sur Firebase Dynamic Links, qui sera supprimé le 25 août 2025. Nous avons publié une solution alternative dans la version 11.8.0 ou ultérieure du SDK iOS Firebase Authentication. Si votre application utilise Firebase Dynamic Links, vous devez la migrer vers le nouveau système basé sur Firebase Hosting.

Migrer votre domaine Firebase Dynamic Links associé vers un domaine Firebase Hosting

À l'avenir, au lieu d'utiliser un domaine Firebase Dynamic Links, Firebase Authentication utilisera le domaine par défaut Firebase Hosting de votre projet pour créer des liens pour les liens par e-mail et d'autres actions de liens hors bande dans les applications mobiles. Cela signifie que vous devrez également mettre à jour votre application pour utiliser ce domaine par défaut comme domaine associé pour les liens d'authentification par e-mail vers votre application mobile.

Vous pouvez suivre les instructions de la page S'authentifier avec Firebase à l'aide d'un lien par e-mail sur les plates-formes Apple pour mettre à jour votre application afin d'utiliser le nouveau domaine par défaut Firebase Hosting provisionné automatiquement.

Suivez les instructions ci-dessous pour gérer les liens du nouveau domaine et indiquer à Firebase Authentication de commencer à utiliser le domaine Firebase Hosting pour générer des liens vers l'application mobile à l'avenir.

Si vous souhaitez continuer à utiliser l'un de vos domaines Firebase Hosting personnalisés ou même votre domaine Firebase Dynamic Links personnalisé comme nouveau domaine associé, suivez les instructions de la section Personnaliser les liens mobiles et adaptez les étapes au domaine que vous souhaitez utiliser.

  1. Associez le domaine Firebase Hosting au domaine associé à votre application.

    Vous devrez configurer le domaine sélectionné en tant que domaine associé pour les liens d'application. Pour configurer le droit d'accès dans votre application, ouvrez l'onglet Signing & Capabilities (Signature et fonctionnalités) de la cible dans Xcode, puis ajoutez les domaines Firebase Hosting de l'étape précédente à la fonctionnalité "Associated Domains" (Domaines associés). Si vous utilisez le domaine Firebase Hosting par défaut, il s'agit de applinks:PROJECT_ID.firebaseapp.com.

    Pour en savoir plus, consultez la page Supporting associated domains (Prendre en charge les domaines associés) sur le site de documentation d'Apple.

    Un fichier de domaine associé a été déployé sous tous vos domaines Firebase Hosting. Pour y accéder, accédez à PROJECT_ID.firebaseapp.com/.well-known/apple-app-site-association. Ce fichier AASA peut être écrasé. Pour en savoir plus, consultez Créer et héberger vos fichiers de configuration de liens universels.

  2. Configurez votre projet pour qu'il utilise les nouveaux liens.

    Lorsque vous êtes prêt à gérer les nouveaux liens de domaine, vous pouvez utiliser le SDK Admin Firebase pour modifier la façon dont vous souhaitez que les liens d'e-mail soient générés et demander à notre backend de commencer à générer des liens à l'aide du nouveau domaine Firebase Hosting.

    import { getAuth } from 'firebase-admin/auth';
    
    const updateEmailAuthDomain = async () => {
        const updateRequest = {
            mobileLinksConfig: {
                domain: 'HOSTING_DOMAIN',
            },
        };
    
        const projectConfigManager = getAuth().projectConfigManager();
    
        try {
            const response = await projectConfigManager.updateProjectConfig(updateRequest);
            // Updated project config
            console.log('Project configuration updated successfully:', response);
        } catch (error) {
            console.error('Error updating the project:', error);
        }
    };
    
  3. Envoyez le lien par e-mail et utilisez-le.

    Envoyez le lien de connexion par e-mail comme avant. Lorsqu'un utilisateur final clique sur le lien, il est redirigé vers l'application (si elle est installée) pour terminer la connexion.

Vous pouvez utiliser un domaine Firebase Hosting personnalisé ou réutiliser votre domaine Firebase Dynamic Links personnalisé comme nouveau domaine de liens mobiles.

Utiliser un domaine Firebase Hosting personnalisé

  1. Suivez le guide Firebase Hosting pour configurer un domaine personnalisé.
  2. Associez le domaine personnalisé au domaine associé à votre application.
  3. Envoyez un lien d'authentification à l'adresse e-mail de l'utilisateur avec un objet ActionCodeSettings mis à jour avec un domaine personnalisé en tant que linkDomain.
  1. Vous pouvez réutiliser n'importe lequel de vos domaines Firebase Dynamic Links en tant que domaine personnalisé. Toutefois, les fonctionnalités Firebase Dynamic Links ne seront plus prises en charge (par exemple, les utilisateurs ne pourront pas être redirigés vers le magasin d'applications si l'application n'est pas installée sur leur appareil).
  2. Envoyez un lien d'authentification à l'adresse e-mail de l'utilisateur avec un objet ActionCodeSettings mis à jour avec un domaine personnalisé en tant que linkDomain.