Inizializzare l'oggetto dell'applicazione client pubblica in MSAL Node

In questo articolo si apprenderà come inizializzare l'oggetto PublicClientApplication nel nodo MSAL e come configurare l'autorità.

Prerequisiti

Prima di inizializzare un'applicazione, è necessario registrarla nel Interfaccia di amministrazione di Microsoft Entra, stabilendo una relazione di trust tra l'applicazione e il Microsoft Identity Platform.

Dopo aver registrato l'app, sono necessari alcuni o tutti i valori seguenti disponibili nella Interfaccia di amministrazione di Microsoft Entra.

Value Obbligatorio Description
ID applicazione (cliente) Obbligatorio GUID che identifica in modo univoco l'applicazione all'interno del Microsoft Identity Platform.
Autorità Optional L'URL del provider di identità (l'istanza) e i destinatari di accesso della tua applicazione. L'istanza e il gruppo di destinatari di accesso, se concatenati, costituiscono l'autorità.
ID della directory (tenant) Optional Specifica l'ID della directory (tenant) se stai creando un'applicazione line-of-business esclusivamente per la propria organizzazione, spesso indicata come una applicazione a tenant singolo.
URI di reindirizzamento Optional Se si crea un'app Web, redirectUri specifica dove il provider di identità, ovvero la piattaforma di identità Microsoft, deve restituire i token di sicurezza emessi.

Inizializzazione dell'oggetto PublicClientApplication

Per usare MSAL Node, è necessario creare un'istanza di un oggetto PublicClientApplication . Supportiamo e consigliamo vivamente l'utilizzo di PKCE (Proof Key for Code Exchange) per qualsiasi PublicClientApplication. Il modello di utilizzo è illustrato nell'esempio PKCE.

import * as msal from "@azure/msal-node";

const clientConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "your_authority",
    }
};
const pca = new msal.PublicClientApplication(clientConfig);

Nozioni di base sulla configurazione

Le opzioni di configurazione per il nodo hanno common parametri e specific paremetri per ogni flusso di autenticazione.

  • client_id è obbligatorio inizializzare un'applicazione client pubblica
  • authority l'impostazione predefinita è https://login.microsoftonline.com/common/ se l'utente non lo imposta durante la configurazione

Per altre opzioni in Configurazione , vedere Configurazione nel nodo MSAL.

Configurare l'autorità

Per impostazione predefinita, MSAL è configurato con il common tenant, che viene usato per applicazioni e applicazioni multi-tenant che consentono account personali (non B2C).

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.microsoftonline.com/common/'
    }
};

Se i destinatari dell'applicazione appartengono a un singolo tenant, è necessario fornire un'autorità con l'ID del tenant, come segue:

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.microsoftonline.com/{your_tenant_id}'
    }
};

Se l'applicazione usa un'autorità OIDC separata come "https://login.live.com" o IdentityServer, sarà necessario specificarla nel knownAuthorities campo e impostare protocolMode su "OIDC".

const msalConfig = {
    auth: {
        clientId: 'your_client_id',
        authority: 'https://login.live.com',
        knownAuthorities: ["login.live.com"],
        protocolMode: "OIDC"
    }
};

Operazioni successive