Ajouter une connexion à votre application iOS ou macOS

Ce guide explique comment ajouter l’authentification et accéder aux informations du profil utilisateur dans n’importe quelle application iOS/macOS à l’aide du SDK Auth0.swift.

Pour utiliser ce guide rapide, vous devez :

  • vous inscrire à un compte Auth0 gratuit ou vous connecter à Auth0.

  • avoir une application iOS/macOS existante que vous souhaitez intégrer. Vous pouvez également consulter ou télécharger une application faisant office d’exemple lorsque vous vous connectez.

1

Configuration d’Auth0

Pour utiliser les services Auth0, vous devez avoir une application configurée dans Auth0 Dashboard. L’application Auth0 est l’endroit où vous allez configurer le fonctionnement de l’authentification pour l’application que vous développez.

Configurer une application Auth0

Utilisez le sélecteur interactif pour créer une nouvelle application Auth0 ou sélectionnez une application Auth0 native existante. Auth0 attribue à chaque application un ID client unique alphanumérique que votre application utilise pour appeler les API Auth0 via la trousse SDK.

Tous les paramètres que vous configurez à l’aide de ce démarrage rapide met automatiquement à jour votre application Auth0 dans le Dashboard, qui est l’endroit où vous pourrez gérer vos applications à l’avenir.

Consultez un exemple d’application si vous préférez explorer une configuration complète.

Configuration des Callback URL et des URL de déconnexion.

Auth0 fait appel aux Callback URL et aux URL de déconnexion pour rediriger les utilisateurs vers votre application. Auth0 fait appel à une URL de rappel après avoir authentifié l’utilisateur et à une URL de déconnexion après avoir supprimé le témoin de session. Si vous ne définissez pas les Callback URL et les URL de déconnexion, les utilisateurs ne pourront pas se connecter et se déconnecter de l’application, et votre application produira une erreur.

Ajoutez les URL suivantes aux URL de rappel et URL de déconnexion, selon la plateforme de votre app. Si vous avez un domaine personnalisé, utilisez-le à la place du domaine de votre locataire Auth0.

iOS

https://{yourDomain}/ios/YOUR_BUNDLE_IDENTIFIER/callback,
YOUR_BUNDLE_IDENTIFIER://{yourDomain}/ios/YOUR_BUNDLE_IDENTIFIER/callback

Was this helpful?

/

macOS

https://{yourDomain}/macos/YOUR_BUNDLE_IDENTIFIER/callback,
YOUR_BUNDLE_IDENTIFIER://{yourDomain}/macos/YOUR_BUNDLE_IDENTIFIER/callback

Was this helpful?

/

Par exemple, si l’identifiant de votre ensemble iOS est com.example.MyApp et votre domaine Auth0 est example.us.auth0.com, cette valeur sera alors :

https://example.us.auth0.com/ios/com.example.MyApp/callback,
com.example.MyApp://example.us.auth0.com/ios/com.example.MyApp/callback

Was this helpful?

/

Configurer le domaine associé

Configurer l’ID Team et l’identifiant de l’ensemble

Allez à la page des paramètres de votre application Auth0, faites défiler jusqu’en bas, et ouvrez Advanced Settings (Paramètres avancés) > (Paramètres de l’appareil). Dans la section iOS, définissez Team ID sur votre Apple Apple Team ID et App ID sur l’identifiant de l’ensemble de votre application.

Auth0 Dashboard> Applications > Applications > [Native App] > Settings tab (Onglet des paramètres) > Advanced Settings (Paramètres avancés) > Device Settings tab (Onglet des paramètres de l’appareil)

Cette action ajoutera votre application au fichier apple-app-site-association de votre locataire Auth0.

Ajouter la capacité de domaine associé

Dans Xcode, allez à l’ongletSigning and Capabilities (Signature et capacités) des paramètres cibles de votre application, puis appuyez sur le bouton + Capability (Capacité). Sélectionnez ensuite Associated Domains (Domaines associés).

Xcode> Onglet Signing and Capabilities (Signature et capacités) > Add New (Ajouter nouveau) > Associated Domains (Domaines associés)

Ajoutez l’entry suivante sous Associated Domains (Domaines associés) :

webcredentials:labs-fundtraining.us.auth0.com

Was this helpful?

/

Si vous avez un domaine personnalisé, utilisez-le à la place du domaine de votre locataire Auth0.

2

Installer la trousse SDK

Utilisation du gestionnaire de packages Swift

Ouvrez l’élément de menu suivant dans Xcode :

File (Fichier) > Add Package Dependencies (Ajouter des dépendances de package)...

Dans la zone de recherche Search or Enter Package URL (Rechercher ou saisir l’URL du package) entrez cette URL :

https://github.com/auth0/Auth0.swift

Was this helpful?

/

Ensuite, sélectionnez la règle de dépendance et appuyez sur Add Package (Ajouter le package).

Utilisation de Cocoapods

Ajoutez la ligne suivante à votre Podfile :

pod 'Auth0', '~> 2.0'

Was this helpful?

/

Ensuite, exécutez pod install.

Utilisation de Carthage

Ajoutez la ligne suivante à votre Cartfile :

github "auth0/Auth0.swift" ~> 2.0

Was this helpful?

/

Ensuite, exécutez carthage bootstrap --use-xcframeworks.

3

Configuration de la trousse SDK

La trousse SDK Auth0.swift a besoin de votre domain (domaine) Auth0 et de votre Client ID (Identifiant client). Ces valeurs se trouvent dans la page des paramètres de votre application Auth0.

  • domain (domaine) : Le domaine de votre locataire Auth0. Si vous avez un domaine personnalisé, utilisez-le à la place du domaine de votre locataire Auth0.

  • Client ID (Identifiant client) L’identifiant alphanumérique unique de l’application Auth0 que vous avez configuré précédemment dans ce démarrage rapide.

Créez un fichier plist nommé Auth0.plist dans votre ensemble d’application contenant les valeurs du domaine Auth0 et de l’identifiant client.

checkpoint.header

Vous avez configuré la trousse SDK Auth0.swift. Exécutez votre application afin de vérifier qu’elle ne produit pas d’erreurs liées à la trousse SDK.

4

Ajouter une fonctionnalité de connexion à votre application

Importez le module Auth0 dans le fichier où vous souhaitez présenter la page de connexion. Ensuite, présentez la page Universal Login (Connexion universelle) dans l’action de votre bouton Login (Connexion).

Un exemple d’écran de connexion universelle pour une application iOS.

checkpoint.header

Appuyez sur le bouton Login (Connexion) et vérifiez que :

  • Une boîte d’alerte s’affiche demandant le consentement.

  • Sélectionner Continue (Continuer) ouvre la page de connexion universelle dans un modal Safari.

  • Vous pouvez vous connecter ou vous inscrire en utilisant un nom d’utilisateur et un mot de passe ou un fournisseur social.

  • Le modal Safari se ferme automatiquement par la suite.

5

Ajouter une fonctionnalité de déconnexion à votre application

Maintenant que vous pouvez vous connecter à votre application, vous avez besoin d’un moyen de vous déconnecter. Dans l’action de votre bouton Logout (Déconnexion), faites usage de la méthode clearSession() pour effacer le témoin de session de la connexion universelle.

checkpoint.header

Appuyez sur le bouton Logout (Déconnexion) et vérifiez que :

  • Une boîte d’alerte s’affiche demandant le consentement.

  • Choisir Continue (Poursuivre) ouvre une page dans une boîte de dialogue modale Safari.

  • La boîte de dialogue modale Safari se ferme automatiquement par la suite.

6

Accéder aux informations du profil utilisateur

L’instance Credentials que vous avez obtenue après vous être connecté inclut un jeton d’ID. Le jeton d’ID contient les informations de profil associées à l’utilisateur connecté, telles que son courriel et sa photo de profil. Vous pouvez utiliser ces informations pour personnaliser l’interface utilisateur de votre application.

La trousse SDK Auth0.swift inclut un utilitaire pour décoder les JWT, comme le jeton d’ID. Commencez par importer le module JWTDecode dans le fichier où vous souhaitez accéder aux informations du profil utilisateur. Ensuite, utilisez la méthode decode(jwt:) pour décoder le jeton d’ID et accéder aux demandes qu’il contient.

checkpoint.header

Vérifiez que vous pouvez accéder à email, picture, ou à toute autre demande après vous être connecté.

Next Steps

Excellent work! If you made it this far, you should now have login, logout, and user profile information running in your application.

This concludes our quickstart tutorial, but there is so much more to explore. To learn more about what you can do with Auth0, check out:

  • Auth0 Dashboard - Learn how to configure and manage your Auth0 tenant and applications
  • Auth0.swift SDK - Explore the SDK used in this tutorial more fully
  • Auth0 Marketplace - Discover integrations you can enable to extend Auth0’s functionality

Did it work?

Any suggestion or typo?

Edit on GitHub
Sign Up

Sign up for an or to your existing account to integrate directly with your own tenant.