Partager via


Connecter des utilisateurs dans un échantillon d’application mobile iOS (Swift) à l’aide de l’authentification native

Ce guide montre comment exécuter un exemple d’application iOS pour s’inscrire, se connecter et se déconnecter, et réaliser des scénarios de réinitialisation du mot de passe en utilisant ID externe Microsoft Entra.

Dans cet article, vous apprendrez comment :

  • Inscrire l’application dans le locataire externe.
  • Activer les flux d’authentification de clients publics et natifs.
  • Créer un flux utilisateur dans le locataire externe.
  • Associer votre application au flux d’utilisateur.
  • Mettre à jour un exemple d’application mobile native iOS pour utiliser les informations de votre propre locataire externe.
  • Exécutez et testez l’échantillon natif de l’application mobile iOS.

Prérequis

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 :

  1. Connectez-vous au centre d’administration de Microsoft Entra au minimum en tant que Développeur d’application.

  2. 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.

  3. Accédez à Identité>Applications>Inscriptions d’applications.

  4. Sélectionnez + Nouvelle inscription.

  5. Dans la page Inscrire une application qui s’affiche ;

    1. Dans Nom, entrez un nom d’application explicite qui va être présenté aux utilisateurs de l’application, par exemple ciam-client-app.
    2. Sous Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel uniquement.
  6. Sélectionnez Inscription.

  7. 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.

Activer les flux d’authentification de clients publics et natifs

Pour spécifier que cette application est un client public et qu’elle peut utiliser l’authentification native, activez les flux d’authentification de clients publics et natifs :

  1. Dans la page des inscriptions d’applications, sélectionnez l’inscription d’application pour laquelle vous souhaitez activer les flux d’authentification de clients publics et natifs.
  2. Sous Gérer, sélectionnez Authentification.
  3. Sous Paramètres avancés, autorisez les flux de clients publics :
    1. Pour Activer les flux mobiles et de bureau suivants, sélectionnez Oui.
    2. Pour Activer l’authentification native, sélectionnez Oui.
  4. Sélectionnez le bouton Enregistrer.
  1. 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.

  2. Sous Gérer, sélectionnez Autorisations de l’API. Dans la liste Autorisations configurées, votre application a reçu l’autorisation User.Read. Toutefois, comme il s’agit d’un locataire externe, les utilisateurs consommateurs ne peuvent pas eux-mêmes consentir à cette autorisation. En tant qu’administrateur, vous devez consentir à cette autorisation pour le compte de tous les utilisateurs du locataire :

    1. Sélectionnez Accorder le consentement administrateur pour <nom de votre locataire>, puis sélectionnez Oui.
    2. Sélectionnez Actualiser, puis vérifiez que Accordé pour <nom de votre locataire> s’affiche sous État pour les deux étendues.

Créer un flux utilisateur

Suivez ces étapes pour créer un flux d’utilisateur.

  1. Connectez-vous au centre d’administration de Microsoft Entra au minimum en tant que Développeur d’application.

  2. Si vous avez accès à plusieurs locataires, veillez à utiliser l’annuaire qui contient votre locataire externe :

    1. Sélectionnez l’icône Annuaires + abonnements dans la barre d’outils.
    2. Dans la page Paramètres du portail | Annuaires + abonnements, recherchez l’annuaire de votre locataire externe dans la liste Nom d’annuaire, puis sélectionnez Basculer.
  3. Dans le menu de la barre latérale, sélectionnez Identité.

  4. Sélectionnez External Identities>Flux utilisateur.

  5. Sélectionnez + Nouveau flux utilisateur.

  6. Dans la page Créer :

    1. Entrez un nom pour le flux utilisateur, par exemple, SignInSignUpSample.

    2. Dans la liste Fournisseurs d’identité, sélectionnez Comptes de messagerie. Ce fournisseur d’identité permet aux utilisateurs de se connecter ou de s’inscrire avec leur adresse e-mail.

    3. Sous Comptes de messagerie, vous pouvez sélectionner une des deux options. Pour ce tutoriel, sélectionnez Envoyer un code secret à usage unique par e-mail.

      • E-mail avec mot de passe : permet aux nouveaux utilisateurs de s’inscrire et de se connecter en utilisant une adresse e-mail comme nom de connexion et un mot de passe comme informations d’identification de premier facteur.
      • Envoyer un code secret à usage unique par e-mail : permet aux nouveaux utilisateurs de s’inscrire et de se connecter en utilisant une adresse e-mail en tant que nom de connexion et un code secret à usage unique par e-mail en tant qu’informations d’identification de premier facteur. Pour que cette option soit disponible au niveau du flux d’utilisateur, veillez à activer le code secret à usage unique (OTP) par e-mail au niveau du tenant (sélectionnez Tous les fournisseurs d’identité>Code secret à usage unique par e-mail, sélectionnez l’option Oui, puis sélectionnez Enregistrer).
    4. Sous Attributs utilisateur, vous pouvez choisir les attributs à collecter auprès de l’utilisateur au moment de son inscription. Pour ce guide, sélectionnez Pays/région et Ville.

  7. Sélectionnez Créer. Le nouveau flux d’utilisateurs apparaît dans la liste Flux d’utilisateurs. Si nécessaire, actualisez la page.

Associer l’application au flux utilisateur

Bien que de nombreuses applications puissent être associées à votre flux utilisateur, chaque application peut être associée à un seul flux utilisateur. Un flux utilisateur permet de configurer l’expérience utilisateur pour des applications spécifiques. Par exemple, vous pouvez configurer un flux d’utilisateurs qui demande aux utilisateurs de se connecter ou de s’inscrire avec une adresse e-mail.

  1. Dans le menu de la barre latérale, sélectionnez Identité.

  2. Sélectionnez External Identities, puis Flux utilisateur.

  3. Dans la page Flux utilisateur, sélectionnez le nom du flux utilisateur que vous avez créé précédemment, par exemple SignInSignUpSample.

  4. Sous Utiliser, sélectionnez Applications.

  5. Sélectionnez Ajouter une application.

  6. Sélectionnez l’application dans la liste, par exemple, ciam-client-app, ou utilisez la barre de recherche pour la trouver, puis sélectionnez-la.

  7. Choisissez Sélectionner.

Clonez un échantillon d’application mobile iOS

  1. Ouvrez un terminal et accédez au répertoire dans lequel vous souhaitez conserver le code.

  2. Clonez l’échantillon d’application mobile à partir de GitHub en exécutant la commande suivante :

    git clone https://github.com/Azure-Samples/ms-identity-ciam-native-auth-ios-sample.git
    
  3. Accédez au répertoire dans lequel le référentiel a été cloné :

    cd ms-identity-ciam-native-auth-ios-sample
    

Configurez l’échantillon d’application mobile iOS

  1. Dans Xcode, ouvrez le projet NativeAuthSampleApp.xcodeproj.

  2. Ouvrez le fichier NativeAuthSampleApp/Configuration.swift.

  3. 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_Tenant_Subdomain_Here et remplacez par le sous-domaine du répertoire (locataire). Par exemple, si votre domaine principal de locataire est contoso.onmicrosoft.com, utilisez contoso. Si vous n’avez pas votre sous-domaine de locataire, découvrez comment lire les détails de votre locataire.

Remarque

N’oubliez pas de sélectionner un schéma à générer et une destination où vous exécutez les produits générés. Chaque schéma contient une liste d’appareils réels ou simulés qui représentent les destinations disponibles.

Exécutez et clonez un échantillon d’application mobile iOS

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.

Capture d’écran de l’invite utilisateur pour entrer un e-mail dans l’application iOS.

Ce guide teste l’utilisation de la fonctionnalité Envoyer un code secret à usage unique par e-mail. Entrez une adresse e-mail valide, sélectionnez S’inscrire, puis lancez l’écran de soumission du code :

Capture d’écran de l’invite utilisateur pour entrer un code secret à usage unique (OTP) dans l’application iOS.

Une fois que vous avez entré votre adresse e-mail sur l’écran précédent, l’application envoie un code de vérification à celui-ci. Une fois que vous avez rentré le code reçu, l’application vous ramène à l’écran précédent et vous connecte automatiquement.

Autres scénarios pris en charge par cet échantillon

L’échantillon d’application prend en charge les flux suivants :

  • E-mail + mot de passe couvre les flux de connexion ou d’inscription avec un e-mail avec mot de passe.
  • Inscription avec e-mail + mot de passe et attributs utilisateur couvre l’inscription avec un e-mail associé à un mot de passe ainsi que l’envoi d’attributs utilisateur.
  • Réinitialisation de mot de passe couvre la réinitialisation de mot de passe en libre-service (SSPR).
  • Accéder à une API protégée couvre l’appel d’une API protégée une fois que l’utilisateur s’est inscrit ou qu’il s’est connecté correctement, et qu’il a acquis un jeton d’accès.
  • Recours au navigateur web couvre l’utilisation de l’authentification basée sur le navigateur en tant que mécanisme de secours quand l’utilisateur ne peut pas s’authentifier via l’authentification native pour une raison quelconque.

Tester le flux associant l’e-mail à un mot de passe

Dans cette section, vous testez le flux associant un e-mail à un mot de passe avec ses variantes, par exemple l’inscription avec un e-mail et un mot de passe ainsi que les attributs utilisateur et la réinitialisation SSPR :

  1. Suivez les étapes décrites dans Créer un flux d’utilisateur pour créer un flux d’utilisateur, mais cette fois, sélectionnez E-mail avec mot de passe en tant que méthode d’authentification. Vous devez configurer Pays/Région et Ville en tant qu’attributs utilisateur. Vous pouvez également modifier le flux d’utilisateur existant pour utiliser E-mail avec mot de passe (sélectionnez External Identities>Flux d’utilisateurs>SignInSignUpSample>Fournisseurs d’identité>E-mail avec mot de passe>Enregistrer).

  2. Suivez les étapes décrites dans Associer l’application au nouveau flux d’utilisateur pour ajouter une application à votre nouveau flux d’utilisateur.

  3. Exécutez l’exemple d’application, puis sélectionnez le menu de points de suspension (...) pour ouvrir davantage d’options.

  4. Sélectionnez le scénario à tester, par exemple E-mail + mot de passe ou Inscription avec e-mail + mot de passe et attributs utilisateur ou Réinitialisation de mot de passe, puis suivez les invites. Pour tester la réinitialisation de mot de passe, vous devez d’abord inscrire un utilisateur, puis activer le code secret à usage unique par e-mail pour tous les utilisateurs de votre tenant.

Tester l’appel d’un flux d’API protégé

Utilisez les étapes décrites dans Appeler une API web protégée dans un échantillon d’application mobile iOS à l’aide de l’authentification native pour appeler une API web protégée à partir d’un échantillon d’application mobile Android.

Étapes suivantes