Configurer la connexion sociale avec Apple
Le connecteur officiel Logto pour la connexion sociale Apple.
Ce guide suppose que vous avez une compréhension de base des Connecteurs Logto. Pour ceux qui ne sont pas familiers, veuillez vous référer au guide des Connecteurs pour commencer.
Commencer
Si vous ne connaissez pas le concept du connecteur ou si vous ne savez pas comment ajouter ce connecteur à votre expérience de connexion, veuillez consulter le tutoriel Logto.
La connexion avec Apple est requise pour l'AppStore si vous avez d'autres méthodes de connexion sociale dans votre application. Avoir la connexion avec Apple sur les appareils Android est idéal si vous proposez également une application Android.
Vous devez vous inscrire au Apple Developer Program avant de continuer.
Activer la connexion avec Apple pour votre application
Même si vous souhaitez implémenter la connexion avec Apple uniquement sur une application web, vous devez toujours avoir une application existante qui intègre l'écosystème de l'AppStore (c'est-à-dire avoir un ID d'application valide).
Vous pouvez le faire via Xcode -> Paramètres du projet -> Signing & Capabilities, ou visiter Certificates, Identifiers & Profiles.
Consultez la section "Enable an App ID" dans les documents officiels d'Apple pour plus d'informations.
Créer un identifiant
- Visitez Certificates, Identifiers & Profiles, puis cliquez sur le bouton "+" à côté de "Identifier".
- Sur la page "Register a new identifier", choisissez "Services IDs" et cliquez sur "Continue".
- Remplissez "Description" et "Identifier" (par exemple,
Logto Test
etio.logto.test
), puis cliquez sur "Continue". - Vérifiez les informations et cliquez sur "Register".
Activer la connexion avec Apple pour votre identifiant
Cliquez sur l'identifiant que vous venez de créer. Cochez "Sign in with Apple" sur la page de détails et cliquez sur "Configure".
Dans la fenêtre modale qui s'ouvre, sélectionnez l'App ID pour lequel vous venez d'activer la connexion avec Apple.
Entrez le domaine de votre instance Logto sans protocole ni port, par exemple, your.logto.domain
; puis entrez l'"URL de retour" (c'est-à-dire l'URI de redirection), qui est l'URL Logto avec /callback/${connector_id}
, par exemple, https://your.logto.domain/callback/apple-universal
. Vous pouvez obtenir le connector_id
généré aléatoirement après avoir créé le connecteur Apple dans la console d'administration.
Cliquez sur "Next" puis "Done" pour fermer la fenêtre modale. Cliquez sur "Continue" en haut à droite, puis cliquez sur "Save" pour enregistrer votre configuration.
Apple n'autorise PAS les URLs de retour avec le protocole HTTP et le domaine localhost
.
Si vous souhaitez tester localement, vous devez modifier le fichier /etc/hosts
pour mapper localhost à un domaine personnalisé et configurer un environnement HTTPS local. mkcert peut vous aider à configurer le HTTPS local.
Configurer la portée
Pour obtenir l'email de l'utilisateur d'Apple, vous devez configurer la portée pour inclure email
. Pour obtenir à la fois l'email et le nom, vous pouvez utiliser name email
comme portée. Consultez les documents officiels d'Apple pour plus d'informations.
L'utilisateur peut choisir de masquer son adresse email à votre application. Dans ce cas, vous ne pourrez pas récupérer la véritable adresse email. Une adresse email comme [email protected]
sera renvoyée à la place.
Pièges de la configuration de la portée
Si vous avez configuré votre application pour demander les adresses e-mail des utilisateurs après qu'ils se soient déjà connectés avec Apple, vous ne pourrez pas récupérer les adresses e-mail de ces utilisateurs existants, même s'ils se reconnectent en utilisant l'identifiant Apple. Pour résoudre ce problème, vous devez demander à vos utilisateurs de visiter la page de gestion du compte Apple ID et de supprimer votre application de la section "Se connecter avec Apple". Cela peut être fait en sélectionnant "Arrêter d'utiliser Apple Sign In" sur la page de détails de votre application.
Par exemple, si votre application demande à la fois l'e-mail et le nom des utilisateurs (portée email name
), l'écran de consentement que les nouveaux utilisateurs voient lors de leur première connexion devrait ressembler à ceci :
Voir la discussion des développeurs ici.
Tester le connecteur Apple
C'est tout. Le connecteur Apple devrait être disponible à la fois dans les applications web et natives. N'oubliez pas de Activer le connecteur social dans l'expérience de connexion.