« Sign in with Apple » : décryptage !
Alors que tous les regards sont actuellement tournés vers Apple et ses tentatives successives de déploiement d’une version stable d’iOS 13, les développeurs ont commencé à déployer les versions révisées de leur application tirant partie des nouveautés apportées par le SDK 13. L’une d’entre elles concerne la sécurité et l’authentification via le « Sign in with Apple ».
Prenez l’une des solutions de SSO célèbres que vous connaissez déjà : Facebook Connect, Google Sign In, you name it et ajoutez-y la couche de sécurité inhérente aux appareils Apple, à savoir Touch ID et Face ID (NDLR: technologies d’identification par empreinte digitale et reconnaissance faciale), et un regard inintéressé à la conservation de vos données personnelles et vous obtenez « Sign in with Apple ».
Une copie par Apple ?
Je ne vous cache pas que le plus gros intérêt de cette solution « clé en main », c’est qu’Apple va rapidement devenir fournisseur d’identité privée. Cela vous est déjà probablement déjà arrivé (moi le premier), par fainéantise praticité, d’utiliser votre compte Google ou Facebook pour vous connecter à votre site marchand favori. D’ailleurs, si vous n’avez pas été vigilant, vous avez probablement déjà octroyé, à ce même site, un tas d’informations non pertinentes relative à votre vie privée, en commençant par vos nom et prénom ainsi que votre email, donnée ô combien convoitée et dont la transmission s’est terriblement banalisée.
C’est là que la magie d’Apple opère. Apple propose d’anonymiser votre email (de manière facultative) via leur propre système de proxy. Ainsi, ça n’est plus nicolas.zurini@isp.com qui est transmis mais une adresse automatiquement générée du type qsd98gdsqd98@privaterelay.appleid.com qui vous servira dans toutes les communications qui seront alors redirigées. Par la suite libre à vous de disposer de ces adresses si vous ne souhaitez plus les utiliser. Quand aux autres informations dont l’application pourrait avoir besoin (nom, prénom, date de naissance, etc.) vous êtes libre de choisir celles que vous souhaitez transmettre.
Et pour finir ce tour d’horizon, le système d’Apple impose l’utilisation de l’authentification à 2 facteurs (2FA), un indispensable pour finir de sécuriser tout ce petit monde. Toutes les données transitant par Apple ne sont pas conservées. Puisque contrairement à certains des autres GAFA(M), la collecte des données personnelles des utilisateurs n’est pas le fond de commerce d’Apple (dixit Apple).
Quel impact pour les apps ?
À chaque nouvelle mouture du SDK iOS, Apple révise ses guidelines d’acceptation de publication des apps (NDLR: le code de la route pour ne pas se voir refuser la publication de son app). Ces guidelines peuvent concerner l’UX, l’UI ou même la technique employée dans votre application. Avec l’arrivée de « Sign in with Apple », Apple ne déroge pas à la règle et vous donne donc un cadre pour l’intégration graphique (entre autres) de ce nouveau bouton, il conviendra de le respecter pour ne pas essuyer de refus.
Mais ce n’est pas tout, Apple l’a annoncé pendant la WWDC 2019, si votre application intègre l’une des solution de SSO précédemment citées (ou une autre), elle devra implémenter « Sign in with Apple » pour de nouveau être acceptée. Libre à vous de juger si Apple souhaite ici être bienveillant ou souhaite simplement pouvoir imposer rapidement sa solution maison…
Un Sign In pour les gouverner tous
Pour implémenter sa solution, Apple propose un SDK pour chacune des plateformes iOS, Android et Web (via Javascript). Là où c’est plutôt malin de la part d’Apple pour déployer sa solution, c’est que votre application native disponible sur iOS, pour laquelle vous aurez dû implémenter « Sign in with Apple », introduira une feature dont vous ne pourrez plus vous passer sur Android (et probablement aussi sur votre site web). Ainsi donc le monde des applications web et mobiles devrait sous peu se teindre de ce petit bouton. Mais est-ce que contrôler davantage ses données personnelles serait une si mauvaise chose ?