Aggiornamento da MSAL Angular v2 a v3

MSAL Angular v3 aggiorna il nostro wrapper Angular alla versione più recente di MSAL Browser e offre supporto immediato per Angular 15, 16, 17, 18 e rxjs 7.

Questa guida illustra le modifiche necessarie per eseguire la migrazione di un'applicazione esistente dalla @azure/msal-angular versione 2 alla versione 3.

Se si esegue la migrazione dalla @azure/msal-angular versione 1, vedere prima la guida alla migrazione v1-v2 per eseguire la migrazione a MSAL v2.

Vedere anche la documentazione sulla migrazione di MSAL Browser per il supporto del browser e altre modifiche chiave.

Cambiamenti dirompenti in @azure/msal-angular@3

Inizializzazione

Applicazioni che usano reindirizzamenti

MSAL v3.x richiede ora l'inizializzazione dell'oggetto applicazione. L'inizializzazione è stata incorporata nell'API MsalRedirectComponent e handleRedirectObservable e nelle applicazioni che hanno implementato strategie di reindirizzamento non devono apportare modifiche. Potrebbe essere necessario apportare altre modifiche se l'applicazione usa componenti autonomi.

Per informazioni dettagliate sulla gestione dei reindirizzamenti nell'applicazione, vedere la guida ai reindirizzamenti .

Applicazioni che usano popup

Poiché l'inizializzazione è integrata in MsalRedirectComponent e handleRedirectObservable, anche le applicazioni che utilizzano solo popup dovranno o eseguire il bootstrap di MsalRedirectComponent oppure chiamare manualmente handleRedirectObservable una volta per inizializzare l'oggetto dell'applicazione.

Per informazioni dettagliate sulla configurazione, vedere la guida ai reindirizzamenti .

Il flag allowNativeBroker

Il allowNativeBroker flag è ora attivato per impostazione predefinita nelle configurazioni. Se si usa un'autorità B2C, è possibile disattivarla come indicato di seguito:

export function MSALInstanceFactory(): IPublicClientApplication {
    return new PublicClientApplication({
        auth: {
            ...
        },
        cache: {
            ...
        },
        system: {
            allowNativeBroker: false, // Disables native brokering support
        }
    });
}

Angular 15, 16, 17, 18 e rxjs@7

MSAL Angular prevede ora che l'applicazione sia compilata con:

  • @angular/core@15o o @angular/core@16 o @angular/core@17@angular/core@18
  • @angular/common@15o o @angular/common@16 o @angular/common@17@angular/common@18
  • rxjs@7

A causa di questa modifica, MSAL Angular v3 non è compatibile con le versioni precedenti di Angular e RxJS e potrebbe essere necessario aggiornare l'applicazione. Seguire la Guida all'aggiornamento di Angular per aggiornare l'applicazione a Angular 15, 16, 17 o 18.

Come per MSAL Angular v2, rxjs-compat non è obbligatorio.

Esempi

Sono ora disponibili gli esempi di sviluppatori seguenti:

Gli esempi illustrano la configurazione e l'utilizzo di base e possono essere migliorati e aggiunti in modo incrementale.

Vedere qui per un elenco degli esempi di MSAL Angular v3 e delle funzionalità illustrate.