Partager via


Connecter des utilisateurs dans un exemple Angular application monopage

Ce guide pratique utilise un exemple d’application monopage Angular (SPA) pour montrer comment ajouter des utilisateurs d’authentification à une spa. L’application monopage permet aux utilisateurs de se connecter et de se déconnecter en utilisant leur propre locataire externe. L’exemple utilise la bibliothèque d’authentification Microsoft pour JavaScript (MSAL.js) pour gérer l’authentification.

Prérequis

Inscrire la SPA dans le Centre d’administration Microsoft Entra

Pour permettre à votre application de connecter des utilisateurs avec Microsoft Entra, vous devez informer ID externe Microsoft Entra de l’existence de l’application que vous créez. 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.

Pour spécifier le type de votre application dans votre inscription d’application, suivez ces étapes :

  1. Sous Gérer, sélectionnez Authentification
  2. Dans la page Configurations de plateforme, sélectionnez Ajouter une plateforme, puis Application monopage.
  3. Pour les URI de redirection, entrez http://localhost:4200/.
  4. Sélectionnez Configurer pour enregistrer vos modifications.

Une fois que vous avez enregistré votre application, celle-ci reçoit l’autorisation User.Read. Toutefois, comme le locataire est un locataire externe, les utilisateurs clients ne peuvent pas eux-mêmes consentir à cette autorisation. En qualité d’administrateur, vous devez consentir à ces autorisations au nom de tous les utilisateurs du client :

  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.

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

Créez un flux utilisateur

Suivez ces étapes pour créer un flux utilisateur qu’un client peut utiliser pour se connecter ou s’inscrire à une application.

  1. Connectez-vous au Centre d’administration Microsoft Entra au moins en tant qu’Administrateur de flux d’utilisateurs ID externe.

  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é>Identités externes>Flux utilisateur.

  4. Sélectionnez + Nouveau flux utilisateur.

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

      Notes

      Les fournisseurs d’identité supplémentaires sont listés ici seulement une fois que vous avez configuré la fédération avec eux. Par exemple, si vous configurez la fédération avec Google ou Facebook, vous pouvez sélectionner ces fournisseurs d’identité supplémentaires ici.

    3. Sous Comptes de messagerie, vous pouvez sélectionner une des deux options. Pour ce tutoriel, sélectionnez E-mail avec mot de passe.

      • 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.
      • Code secret à usage unique par e-mail : permet aux nouveaux utilisateurs de s’inscrire et de se connecter en utilisant une adresse e-mail comme nom de connexion et un code secret à usage unique par e-mail comme informations d’identification de premier facteur. Le code secret à usage unique par e-mail doit être activé au niveau du locataire (Tous les fournisseurs d’identité>Code secret à usage unique par e-mail) pour que cette option soit disponible au niveau du flux utilisateur.
    4. Sous Attributs utilisateur, choisissez les attributs à collecter auprès de l’utilisateur lors de l’inscription. Sélectionnez Afficher plus afin de choisir des attributs et des revendications pour Pays/région, Nom d’affichage et Code postal. Sélectionnez OK. (Les utilisateurs sont invités à fournir ces attributs que lors de leur première inscription.)

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

Pour activer la réinitialisation de mot de passe en libre-service, suivez les étapes de l’article Activer la réinitialisation de mot de passe en libre-service.

Associer l’application SPA au flux utilisateur

Pour que les utilisateurs clients voient l’expérience d’inscription ou de connexion quand ils utilisent votre application, vous devez associer votre application à un flux d’utilisateur. Bien que de nombreuses applications puissent être associées à votre flux utilisateur, chaque application peut être associée à un seul flux utilisateur.

  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.

Une fois que vous avez associé votre application à un flux utilisateur, vous pouvez le tester en simulant l’expérience d’inscription ou de connexion d’un utilisateur avec votre application à partir du Centre d’administration Microsoft Entra. Pour ce faire, suivez les étapes décrites dans Tester votre flux d’utilisateur pour l’inscription/la connexion.

Cloner ou télécharger l’exemple de SPA

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-javascript-tutorial.git
    
  • Téléchargez l’exemple. Extrayez-la dans un chemin d’accès de fichier où la longueur du nom est inférieure à 260 caractères.

Installer les dépendances du projet

  1. Ouvrez une fenêtre de terminal dans le répertoire racine de l’exemple de projet, puis entrez l’extrait de code suivant pour accéder au dossier du projet :

    cd 1-Authentication\2-sign-in-angular\SPA
    
  2. Installez les dépendances de projet :

    npm install
    

Configurer l’exemple de SPA

  1. Ouvrez SPA/src/app/auth-config.ts et remplacez ce qui suit par les valeurs obtenues à partir du centre d’administration Microsoft Entra :

    • 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 du locataire est contoso.onmicrosoft.com, utilisez contoso. Si vous ne disposez pas du nom de votre locataire, découvrez comment consulter les détails de votre locataire.
  2. Enregistrez le fichier.

Exécuter votre projet et vous connecter

Tous les extraits de code nécessaires ont été ajoutés, vous pouvez donc maintenant appeler l’application et la tester dans un navigateur web.

  1. Ouvrez un nouveau terminal en sélectionnant Terminal>Nouveau Terminal.

  2. Exécutez la commande suivante pour démarrer votre serveur web.

    cd 1-Authentication\2-sign-in-angular\SPA
    npm start
    
  3. Ouvrez un navigateur web et accédez à http://localhost:4200/.

  4. Connectez-vous avec un compte inscrit auprès du locataire externe.

  5. Une fois que vous vous êtes connecté, le nom d’affichage s’affiche en regard du bouton Se déconnecter.