Condividi tramite


Esercitazione: Preparare un'applicazione per l'autenticazione

Nell'esercitazione precedente è stata registrata un'applicazione Web nell'interfaccia di amministrazione di Microsoft Entra. Questa esercitazione illustra come creare un'app Web ASP.NET Core usando un IDE. Si creerà e caricherà anche un certificato autofirmato nell'interfaccia di amministrazione di Microsoft Entra per proteggere l'applicazione. Infine, si configurerà l'applicazione per l'autenticazione.

Contenuto dell'esercitazione:

  • Creare un'app Web ASP.NET Core
  • Creare un certificato autofirmato
  • Configurare le impostazioni per l'applicazione
  • Definire le impostazioni e gli URL della piattaforma

Prerequisiti

Creare un progetto ASP.NET Core

Usare le schede seguenti per creare un progetto ASP.NET Core all'interno di un IDE.

  1. Aprire Visual Studio e quindi selezionare Crea un nuovo progetto.
  2. Cercare e scegliere il modello ASP.NET Core Web App e quindi selezionare Avanti.
  3. Immettere un nome per il progetto, ad esempio NewWebAppLocal.
  4. Scegliere un percorso per il progetto o accettare l'opzione predefinita e quindi selezionare Avanti.
  5. Accettare l'impostazione predefinita per Framework, Tipo di autenticazione e Configura per HTTPS. Il tipo di autenticazione può essere impostato su Nessuno perché questa esercitazione illustra il processo.
  6. Seleziona Crea.

Creare e caricare un certificato autofirmato

L'uso dei certificati è un modo consigliato per proteggere la comunicazione tra client e server. Ai fini di questa esercitazione, nella directory del progetto verrà creato un certificato autofirmato. Altre informazioni sui certificati autofirmato sono disponibili qui.

  1. Selezionare Il prompt dei comandi per gli sviluppatori della riga di comando > strumenti>.

  2. Immettere il comando seguente per creare un nuovo certificato autofirmato:

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

Caricare il certificato nell'interfaccia di amministrazione di Microsoft Entra

Per rendere il certificato disponibile per l'applicazione, è necessario caricarlo nel tenant.

  1. A partire dalla pagina Panoramica dell'app creata in precedenza, in Gestisci selezionare Certificati e segreti e selezionare la scheda Certificati (0).

  2. Selezionare Carica certificato.

    Screenshot del caricamento di un certificato in un tenant di Microsoft Entra.

  3. Selezionare l'icona della cartella , quindi cercare e selezionare il certificato creato in precedenza.

  4. Immettere una descrizione per il certificato e selezionare Aggiungi.

  5. Registrare il valore identificazione personale , che verrà usato nel passaggio successivo.

    Screenshot che mostra la copia dell'identificazione personale del certificato.

Configurare l'applicazione per l'autenticazione e le informazioni di riferimento sulle API

I valori registrati in precedenza verranno usati per configurare l'applicazione per l'autenticazione. Il file di configurazione, appsettings.json, viene usato per archiviare le impostazioni dell'applicazione usate durante il runtime. Poiché l'applicazione chiamerà anche in un'API Web, deve contenere anche un riferimento.

  1. Nell'IDE aprire appsettings.json e sostituire il contenuto del file con il frammento di codice seguente. Sostituire il testo tra virgolette con i valori registrati in precedenza.

    {
    "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 - Endpoint di autenticazione. Verificare i diversi endpoint disponibili nei cloud nazionali.
    • TenantId - Identificatore del tenant in cui è registrata l'applicazione. Sostituire il testo tra virgolette con il valore ID directory (tenant) registrato in precedenza dalla pagina di panoramica dell'applicazione registrata.
    • ClientId - Identificatore dell'applicazione, detto anche client. Sostituire il testo tra virgolette con il valore ID applicazione (client) registrato in precedenza dalla pagina di panoramica dell'applicazione registrata.
    • ClientCertificates - Viene usato un certificato autofirmato per l'autenticazione nell'applicazione. Sostituire il testo di CertificateThumbprint con l'identificazione personale del certificato registrato in precedenza.
    • CallbackPath - Identificatore che consente al server di reindirizzare una risposta all'applicazione appropriata.
    • DownstreamApi - Identificatore che definisce un endpoint per l'accesso a Microsoft Graph. L'URI dell'applicazione viene combinato con l'ambito specificato. Per definire la configurazione per un'applicazione di proprietà dell'organizzazione, il valore dell'attributo Scopes è leggermente diverso.
  2. Salvare le modifiche apportate al file .

  3. Nella cartella Proprietà aprire il file launch Impostazioni.json.

  4. Trovare e registrare il valore all'interno dell'avvio httpsImpostazioni.json, ad esempio https://localhost:{port}.applicationURI Questo URL verrà usato quando si definisce l'URI di reindirizzamento. Non usare il http valore .

Aggiungere un URI di reindirizzamento della piattaforma

  1. Nell'interfaccia di amministrazione di Microsoft Entra, in Gestisci selezionare Registrazioni app e quindi selezionare l'applicazione creata in precedenza.

  2. Nel menu a sinistra, in Gestisci, selezionare Autenticazione.

  3. In Configurazioni della piattaforma selezionare Aggiungi una piattaforma e quindi Selezionare Web.

    Screenshot su come selezionare la piattaforma per l'applicazione.

  4. In URI di reindirizzamento immettere applicationURL e CallbackPath/signin-oidc, sotto forma di https://localhost:{port}/signin-oidc.

  5. In URL di disconnessione del canale anteriore immettere l'URL seguente per la disconnessione, https://localhost:{port}/signout-oidc.

  6. Seleziona Configura.

Passaggi successivi