Condividi tramite


Esercitazione: Creare un'applicazione a pagina singola JavaScript Vanilla per l'autenticazione in un tenant esterno

Questa esercitazione è la seconda parte di una serie che illustra la creazione di un'applicazione a pagina singola (SPA) Vanilla JavaScript (JS) e la preparazione per l'autenticazione tramite l'interfaccia di amministrazione di Microsoft Entra. Nella prima parte di questa serie è stata registrata un'applicazione e sono stati configurati flussi utente nel proprio tenant esterno. Questa esercitazione illustra come creare un'applicazione a pagina singola JavaScript Vanilla usando npm e creare i file necessari per l'autenticazione e l'autorizzazione.

Contenuto dell'esercitazione:

  • Creare un progetto JavaScript Vanilla in Visual Studio Code
  • Installare i pacchetti necessari
  • Aggiungere codice a server.js per creare un server

Prerequisiti

Creare un nuovo progetto JavaScript Vanilla e installare le dipendenze

  1. In Visual Studio Code, selezionare File>Apri cartella.... Passare a e selezionare il percorso in cui creare il progetto.

  2. Aprire un nuovo terminale selezionando Terminale>Nuovo terminale.

  3. Eseguire il comando seguente per creare un nuovo progetto JavaScript Vanilla:

    npm init -y
    
  4. Creare ulteriori cartelle e file per ottenere la struttura di progetto seguente:

        └── public
            └── authConfig.js
            └── authPopup.js
            └── authRedirect.js
            └── claimUtils.js
            └── index.html
            └── signout.html
            └── styles.css
            └── ui.js    
        └── server.js
    

Installare le dipendenze dell'app

  1. Nel Terminale, eseguire il comando seguente per installare le dipendenze necessarie per il progetto:

    npm install express morgan @azure/msal-browser
    

Modificare il file server.js

Express è un framework applicazione Web per Node.js. Viene usato per creare un server che ospita l'applicazione. Morgan è il middleware che registra le richieste HTTP alla console. Il file del server viene usato per ospitare queste dipendenze e contiene il percorso per l'applicazione. L'autenticazione e l'autorizzazione vengono gestite da Microsoft Authentication Library per JavaScript (MSAL.js).

  1. Aggiungere il frammento di codice seguente al file server.js:

    const express = require('express');
    const morgan = require('morgan');
    const path = require('path');
    
    const DEFAULT_PORT = process.env.PORT || 3000;
    
    // initialize express.
    const app = express();
    
    // Configure morgan module to log all requests.
    app.use(morgan('dev'));
    
    // serve public assets.
    app.use(express.static('public'));
    
    // serve msal-browser module
    app.use(express.static(path.join(__dirname, "node_modules/@azure/msal-browser/lib")));
    
    // set up a route for signout.html
    app.get('/signout', (req, res) => {
        res.sendFile(path.join(__dirname + '/public/signout.html'));
    });
    
    // set up a route for redirect.html
    app.get('/redirect', (req, res) => {
        res.sendFile(path.join(__dirname + '/public/redirect.html'));
    });
    
    // set up a route for index.html
    app.get('/', (req, res) => {
        res.sendFile(path.join(__dirname + '/index.html'));
    });
    
    app.listen(DEFAULT_PORT, () => {
        console.log(`Sample app listening on port ${DEFAULT_PORT}!`);
    });
    
    

In questo codice, la variabile dell'app viene inizializzata con il modulo express ed express viene usato per gestire gli asset pubblici. MSAL-browser funge come asset statico e viene usato per avviare il flusso di autenticazione.

Passaggio successivo