Partager via


Tutoriel : Préparer une application pour l’authentification

Dans le didacticiel précédent, vous avez inscrit une application web dans le Centre d’administration Microsoft Entra. Ce tutoriel montre comment créer une application web ASP.NET Core à l’aide d’un IDE. Vous allez également créer et charger un certificat auto-signé dans le Centre d’administration Microsoft Entra pour sécuriser votre application. Enfin, vous allez configurer l’application pour l’authentification.

Dans ce tutoriel :

  • Créer une application web ASP.NET Core
  • Créer un certificat auto-signé
  • Configurer les paramètres de l’application
  • Définir les paramètres de plateforme et les URL

Conditions préalables

Créer un projet ASP.NET Core

Utilisez les onglets suivants pour créer un projet ASP.NET Core au sein d’un IDE.

  1. Ouvrez Visual Studio, puis sélectionnez Créer un projet.
  2. Recherchez et choisissez le modèle ASP.NET Core Web App, puis sélectionnez suivant.
  3. Entrez un nom pour le projet, par exemple NewWebAppLocal.
  4. Choisissez un emplacement pour le projet ou acceptez l’option par défaut, puis sélectionnez suivant.
  5. Acceptez la valeur par défaut des paramètres Framework, Type d’authentification et Configurer pour HTTPS. Le type d’authentification peut être défini sur Aucun, car ce didacticiel traite du processus.
  6. Sélectionnez Créer.

Créer et charger un certificat auto-signé

L’utilisation de certificats est un moyen suggéré de sécuriser la communication entre le client et le serveur. Dans le cadre de ce didacticiel, un certificat auto-signé est créé dans le répertoire du projet. En savoir plus sur les certificats auto-signés ici.

  1. Sélectionnez Outils > Ligne de commande > Invite de commandes développeur.

  2. Entrez la commande suivante pour créer un certificat auto-signé :

    dotnet dev-certs https -ep ./certificate.crt --trust
    

Charger un certificat dans le Centre d’administration Microsoft Entra

Pour rendre le certificat accessible à l’application, il doit être chargé dans le locataire.

  1. Depuis la page Vue d’ensemble de l’application créée précédemment, sous Gérer, sélectionnez Certificats et secrets, puis l’onglet Certificats (0).

  2. Sélectionnez Charger le certificat.

    Capture d’écran du chargement d’un certificat dans un locataire Microsoft Entra.

  3. Sélectionnez l’icône dossier, puis recherchez et sélectionnez le certificat créé précédemment.

  4. Entrez une description du certificat et sélectionnez Ajouter.

  5. Enregistrez la valeur d’Empreinte numérique, qui sera utilisée à l’étape suivante.

    Capture d’écran montrant la copie de l’empreinte numérique du certificat.

Configurer l’application pour l’authentification et la référence d’API

Les valeurs enregistrées précédemment seront utilisées pour configurer l’application pour l’authentification. Le fichier de configuration, appsettings.json, est utilisé pour stocker les paramètres d’application utilisés pendant l’exécution. Comme l’application appelle également une API web, elle doit également contenir une référence à celle-ci.

  1. Dans votre IDE, ouvrez appsettings.json et remplacez le contenu du fichier par l’extrait de code suivant. Remplacez le texte entre guillemets par les valeurs enregistrées précédemment.

    {
    "AzureAd": {
      "Instance": "https://login.microsoftonline.com/",
      "TenantId": "Enter the tenant ID obtained from the Microsoft Entra admin center",
      "ClientId": "Enter the client ID obtained from the Microsoft Entra admin center",
      "ClientCertificates": [
        {
          "SourceType": "StoreWithThumbprint",
          "CertificateStorePath": "CurrentUser/My",
          "CertificateThumbprint": "Enter the certificate thumbprint obtained the Microsoft Entra admin center"
        }   
      ],
      "CallbackPath": "/signin-oidc"
    },
      "DownstreamApi": {
        "BaseUrl": "https://graph.microsoft.com/v1.0/",
        "RelativePath": "me",
        "Scopes": [ 
          "user.read" 
        ]
      },
      "Logging": {
        "LogLevel": {
          "Default": "Information",
          "Microsoft.AspNetCore": "Warning"
        }
      },
      "AllowedHosts": "*"
    }
    
    • Instance - Point de terminaison d’authentification. Vérifiez les différents points de terminaison disponibles dans les clouds nationaux.
    • TenantId : identificateur du locataire où l’application est inscrite. Remplacez le texte entre guillemets par la valeur de l’ID de répertoire (tenant) qui a été enregistrée précédemment sur la page d'aperçu de l'application enregistrée.
    • ClientId : identificateur de l’application, également appelé client. Remplacez le texte entre guillemets par la valeur de l'ID d'application (client) qui a été enregistrée précédemment depuis la page d’aperçu de l’application enregistrée.
    • ClientCertificates : un certificat auto-signé est utilisé pour l’authentification dans l’application. Remplacez le texte du CertificateThumbprint par l’empreinte numérique du certificat précédemment enregistré.
    • CallbackPath : identificateur pour aider le serveur à rediriger une réponse vers l’application appropriée.
    • DownstreamApi : identificateur qui définit un point de terminaison pour accéder à Microsoft Graph. L’URI d’application est associé à l’étendue spécifiée. Pour définir la configuration d’une application appartenant à l’organisation, la valeur de l’attribut Scopes est légèrement différente.
  2. Enregistrez les modifications apportées au fichier.

  3. Dans le dossier Propriétés , ouvrez le fichier launchSettings.json.

  4. Recherchez et enregistrez la valeur httpsapplicationURI dans launchSettings.json, par exemple https://localhost:{port}. Cette URL sera utilisée lors de la définition de l’URI de redirection . N’utilisez pas la valeur http.

Ajouter un URI de redirection de plateforme

  1. Dans le centre d’administration Microsoft Entra, sous Gérer, sélectionnez Inscriptions d’applications, puis l’application créée précédemment.

  2. Dans le menu de gauche, sous Gérer, sélectionnez Authentification.

  3. Dans Configurations de plateforme, sélectionnez Ajouter une plateforme, puis Web.

    Capture d’écran montrant comment sélectionner la plateforme de l’application.

  4. Sous URI de redirection, entrez les éléments applicationURL et CallbackPath, /signin-oidc, sous la forme https://localhost:{port}/signin-oidc.

  5. Sous URL de déconnexion du canal frontal, entrez l’URL suivante pour la déconnexion, https://localhost:{port}/signout-oidc.

  6. Sélectionnez Configurer.

Étapes suivantes