Retour

L’authentification “Connexion avec Apple”

le 

Comme présenté lors de la WWDC 2019, avec la sortie du nouveau système d'exploitation pour iPhone, iOS 13, Apple a introduit une nouvelle façon de créer des comptes dans les applications et les sites Web, appelée “Connexion avec Apple ”.

Depuis Avril 2020, chaque application disponible sur l'App Store d'Apple doit intégrer le service “Connexion avec Apple”.

Qu'est-ce que la “Connexion avec Apple”?

Il s’agit d’un service de «connexion unique» (Single Sign-On - SSO) destiné à fonctionner aux mêmes endroits de votre appareil où vous voyez habituellement des boutons pour vous enregistrer avec votre compte Facebook ou Google. Au lieu de créer un nouveau compte pour une app ou un site Web avec votre adresse e-mail et un mot de passe, vous vous connectez à l'aide de votre identifiant Apple.

Grâce au bouton “Connexion avec Apple” dans votre application, les gens peuvent se connecter ou s'inscrire en appuyant simplement sur l'identifiant Apple et s'authentifier facilement à l'écran avec Face ID ou Touch ID. Plus de formulaires à remplir ni de mot de passe à créer et à mémoriser!

“Connexion avec Apple” fonctionne sur tous les appareils Apple - appareils iOS (iPhone, iPad et iPod touch), Mac, Apple TV et Apple Watch.

Apple propose également une solution pour les appareils Android et les applications Web (avec Connexion avec Apple JS ).

Du point de vue de la sécurité, Apple représente une excellente option pour les utilisateurs et les développeurs grâce à une confidentialité accrue.

Il y a aussi des fonctionnalités qui profitent aux développeurs d'applications iOS pour tablette ou iPhone - comme la prise en charge intégrée de l'authentification à deux facteurs, la détection anti-fraude et la possibilité d'offrir un accès instantané et transparent à leur application.de votre 

Les utilisateurs bénéficient de la même inscription et connexion rapides qu'avec les autres services (Facebook, Twitter, etc.), mais sachant que les apps ne partagent pas leurs informations ils peuvent choisir de partager ou non leur e-mail avec le développeur de l'application.

Si les utilisateurs décident de ne pas partager leur véritable e-mail, une méthode existe : Apple générera une adresse e-mail aléatoire - mais réelle et vérifiée - pour l'application en question, puis acheminera les e-mails que l'application souhaite envoyer à cette adresse. La nouvelle adresse e-mail générée viendra dans ce format: fc452bd5ea@privaterelay.appleid.com. L'utilisateur peut choisir de désactiver, dans ses réglages, cette adresse e-mail de l'application à tout moment, s'il commence à recevoir du spam, par exemple.

Quels sont les pré-requis pour intégrer la "Connexion avec Apple"?

Les règles d'Apple stipulent que les applications qui utilisent un service de connexion tiers ou social (comme “Facebook” et / ou “Twitter”) pour authentifier le compte principal de l'utilisateur dans l'application doivent également proposer “Connexion avec Apple” comme option équivalente.

Le bouton “Connexion avec Apple” doit être bien visible et situé en tête de liste des boutons de connexion, sans avoir à aller le chercher dans les préférences système. 

Comment intégrer Connexion avec Apple dans votre application?

Une des premières étapes consiste à ajouter la fonctionnalité à votre application. Cela peut être fait dans les réglages sur le portail Apple Developer ou sur Xcode.

Après cela, vous devez ajouter le bouton Connexion avec Apple: ASAuthorizationAppleIDButton. (Le bouton est disponible en 2 formats: “Connexion avec Apple” ou “Continuer avec Apple”.) Puis ajoutez une action. Vous pouvez définir le bouton en noir ou blanc pour s'adapter au mieux au design de votre application.

Ensuite, il est temps de configurer une requête et d'effectuer une autorisation. Vous devez obtenir une autorisation pour créer une demande de «création d'une connexion», puis définir votre champ d'action. Pour le champ d’action, deux options sont actuellement disponibles: email et nom complet.

Alternativement, si votre application l'exige pour la meilleure expérience utilisateur, vous pouvez définir requestedScopes pour le nom complet et l'e-mail. Vous ne devez demander ces informations que si elles sont vraiment nécessaires pour votre application et vous contenter du minimum d'informations. Une fois la demande configurée, initialisez ASAuthorizationController, définissez les “Delegate” pour récupérer les résultats dans votre application.

Lorsque l'utilisateur exécute la requête en ligne et fournit les informations demandées, ASAuthorizationController retournera avec l'autorisation si l'utilisateur a autorisé l'application à se connecter avec Apple, via vérification.

Comment configurer "Connexion avec Apple" sur votre application GoodBarber?

Pour votre app iOS:

Trois conditions sont nécessaires pour ajouter "Connexion avec Apple" à vos applications GoodBarber:
- Il est obligatoire d'avoir déjà configuré l'authentification Facebook ou Twitter sur votre application.
- Il est obligatoire d'avoir son propre compte développeur Apple
- Cette fonctionnalité n'est disponible que pour les tarifs GoodBarber Premium .

S'il s'agit d'une première soumission sur l'App Store, notre équipe ajoutera “Connexion avec Apple” à votre application pendant le processus de soumission.

Si votre application est déjà publiée sur l'App Store, demandez une mise à jour de votre application iOS. Notre équipe ajoutera “Connexion avec Apple” à votre application pendant le processus de mise à jour.

Sur les appareils utilisant iOS 13, le SDK Apple permet une expérience de connexion native, en utilisant Face ID comme vérification de l'identité par exemple.

Pour les appareils utilisant iOS 12 et versions antérieures, les utilisateurs seront redirigés vers Safari avec une URL personnalisée commençant par «https://appleid.apple.com/auth/authorize». Cet URL contient les éléments de personnalisation des paramètres comme le client_id, l'URL de redirection ou la demande d’autorisation (requested scope).

Là, les utilisateurs pourront procéder à leur identification en entrant leur identifiant Apple et leur mot de passe.

Sur les PWA, nous utilisons le script JS d'Apple pour afficher le bouton et traiter les requêtes. L'expérience est de type classique: Login (Apple ID) + mot de passe.

Sur Android, le fonctionnement est très similaire à iOS 12 sauf que l'utilisateur ne quitte jamais l'application. La page Web d'Apple s'affiche dans l'application

Pour votre app Android et votre PWA:

Pour les versions Android et PWA de votre application, une fois que vous avez défini votre authentification Facebook ou Twitter et Connectez avec Apple, tout est prêt pour votre application iOS:
- Pour Android, générez et soumettez votre application sur Google Play Store (1ère soumission) ou mettez à jour votre application Android déjà publiée sur Google Play Store
- Générez ou ré-générez votre PWA

Bonnes pratiques pour utiliser la "Connexion avec Apple"

Comme recommandé par Apple, ne demandez aux utilisateurs de se connecter que si cela leur permet de bénéficier d'une valeur ajoutée (fonctionnalités supplémentaires, personnalisation).

Assurez-vous de proposer Connexion avec Apple sur l'écran de chaque version de votre application, sur toutes les plates-formes, y compris les plates-formes non Apple et le Web.

Retardez l'obligation de s'authentifier le plus longtemps possible. Les gens abandonnent souvent les applications lorsqu'ils sont obligés de se connecter et de procéder à une identification avant de faire quoi que ce soit d'utile. Donnez-leur la chance de se familiariser avec votre application avant de prendre un engagement. Par exemple, une app de diffusion de contenu “Live” pourrait permettre aux utilisateurs de pré-visualiser des extraits avant de se connecter pour visualiser l'ensemble du contenu.

POUR ALLER PLUS LOIN : 

 

Conseils pour créer une app