Connecter des utilisateurs dans un exemple d’application mobile iOS (Swift)
Ce guide montre comment configurer un exemple d’application mobile iOS pour connecter des utilisateurs.
Dans cet article, vous effectuez les tâches suivantes :
- Inscrire une application dans le centre d’administration Microsoft Entra.
- Ajouter une URL de redirection de plateforme.
- Activer les flux de clients publics.
- Mettre à jour le fichier d’exemple de code de configuration iOS afin d’utiliser votre propre ID externe Microsoft Entra pour les détails relatifs au locataire externe.
- Exécuter et cloner l’exemple d’application mobile iOS.
Prérequis
- Xcode.
- Un locataire externe. Si vous n’en avez pas, inscrivez-vous à un essai gratuit.
Inscrire une application
ID externe Microsoft Entra doit être informé de l’existence de l’application que vous créez pour permettre à votre application de connecter des utilisateurs avec Microsoft Entra. L’inscription d’application établit une relation de confiance entre l’application et Microsoft Entra. Lorsque vous enregistrez une application, l'ID externe génère un identifiant unique appelé ID d'application (client), une valeur utilisée pour identifier votre application lors de la création de demandes d'authentification.
Les étapes suivantes vous montrent comment inscrire votre application dans le centre d’administration Microsoft Entra :
Connectez-vous au centre d’administration de Microsoft Entra au minimum en tant que Développeur d’application.
Si vous avez accès à plusieurs tenants, utilisez l’icône Paramètres dans le menu supérieur pour basculer vers votre tenant externe depuis le menu Répertoires + abonnements.
Accédez à Identité>Applications>Inscriptions d’applications.
Sélectionnez + Nouvelle inscription.
Dans la page Inscrire une application qui s’affiche ;
- Dans Nom, entrez un nom d’application explicite qui va être présenté aux utilisateurs de l’application, par exemple ciam-client-app.
- Sous Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel uniquement.
Sélectionnez Inscription.
Le volet Vue d’ensemble de l’application s’affiche après une inscription réussie. Enregistrez l’ID d’application (client) à utiliser dans le code source de votre application.
Ajouter une URL de redirection de plateforme
Pour spécifier le type de votre application dans votre inscription d’application, effectuez les étapes suivantes :
- Sous Gérer, sélectionnez Authentification.
- Dans la page Configurations de plateforme, sélectionnez Ajouter une plateforme, puis sélectionnez l’option iOS / macOS.
- Entrez l’ID de bundle de votre projet. Si vous avez téléchargé l’exemple de code, cette valeur est
com.microsoft.identitysample.ciam.MSALiOS
. - Sélectionnez Configurer et enregistrez la Configuration MSAL qui apparaît dans la page Configuration iOS / macOS pour pouvoir l’entrer plus tard quand vous devrez configurer votre application.
- Cliquez sur Terminé.
Activer le flux de client public
Pour identifier votre application en tant que client public, procédez comme suit :
Sous Gérer, sélectionnez Authentification.
Sous Paramètres avancés, pour Autoriser les flux clients publics, sélectionnez Oui.
Cliquez sur Enregistrer pour enregistrer vos modifications.
Accorder un consentement d’administrateur
Une fois que vous avez inscrit votre application, elle se voit affecter l’autorisation User.Read. Toutefois, dans la mesure où le tenant (locataire) est un tenant externe, les utilisateurs clients eux-mêmes ne peuvent pas consentir à cette autorisation. En qualité d’administrateur, vous devez consentir à ces autorisations au nom de tous les utilisateurs du client :
Dans la page inscriptions d’applications, sélectionnez l’application que vous avez créée (par exemple ciam-client-app) pour ouvrir sa page Vue d’ensemble.
Sous Gérer, sélectionnez Autorisations de l’API.
- Sélectionnez Accorder le consentement administrateur pour <nom de votre client>, puis sélectionnez Oui.
- Sélectionnez Actualiser, puis vérifiez que Accordé pour <votre nom de tenant (locataire)> apparaît sous État de l’autorisation.
Clonez un échantillon d’application mobile iOS
Pour obtenir l’exemple d’application, vous pouvez le cloner à partir de GitHub ou le télécharger sous la forme d’un fichier .zip.
Pour cloner l’exemple, ouvrez une invite de commandes, accédez à l’emplacement où vous souhaitez créer le projet, puis entrez la commande suivante :
git clone https://github.com/Azure-Samples/ms-identity-ciam-browser-delegated-ios-sample.git
Configurez l’échantillon d’application mobile iOS
Pour activer l’authentification et l’accès aux ressources Microsoft Graph, configurez l’exemple en suivant ces étapes :
Dans Xcode, ouvrez le projet que vous avez cloné.
Ouvrez le fichier /MSALiOS/Configuration.swift.
Recherchez l’espace réservé :
Enter_the_Application_Id_Here
et remplacez-le par l’ID d’application (client) de l’application inscrite précédemment.Enter_the_Redirect_URI_Here
et remplacez par la valeur kRedirectUri dans le fichier de configuration MSAL (Microsoft Authentication Library) que vous avez téléchargé précédemment lorsque vous avez ajouté l’URL de redirection de plateforme.Enter_the_Protected_API_Scopes_Here
et remplacez-la par les étendues enregistrées dans Accorder le consentement administrateur. Si vous n’avez enregistré aucune étendue, vous pouvez laisser cette liste d’étendues vide.Enter_the_Tenant_Subdomain_Here
par le sous-domaine de l’annuaire (locataire). Par exemple, si votre domaine principal du locataire estcontoso.onmicrosoft.com
, utilisezcontoso
. Si vous ne connaissez pas votre sous-domaine de tenant, découvrez comment lire les détails de votre tenant.
Vous avez configuré l’application qui est maintenant prête à être exécutée.
Exécuter et tester l’exemple d’application iOS
Pour générer et exécuter votre application, procédez comme suit :
- Pour générer et exécuter votre code, sélectionnez Exécuter depuis le menu Produit dans Xcode. Après une génération réussie, Xcode lance l’échantillon d’application dans le simulateur.
- Sélectionnez Acquérir un jeton de manière interactive pour demander un jeton d’accès.
- Si vous sélectionnez API - Effectuer une opération GET pour appeler une API web ASP.NET Core protégée, vous obtenez une erreur.
Pour découvrir plus d’informations sur l’appel d’une API web protégée, consulter nos Étapes suivantes