Uppgradera från MSAL Angular v2 till v3

MSAL Angular v3 gör vår Angular-wrapper uppdaterad till den senaste versionen av MSAL Browser och erbjuder inbyggt stöd för Angular 15, 16, 17, 18 och rxjs 7.

Den här guiden visar de ändringar som krävs för att migrera ett befintligt program från @azure/msal-angular v2 till v3.

Om du migrerar från @azure/msal-angular v1 läser du migreringsguiden för v1-v2 först för att migrera till MSAL v2.

Se även MSAL Browser Migration Doc för webbläsarstöd och andra viktiga ändringar.

Ändringar som bryter kompatibiliteten i @azure/msal-angular@3

Initialisering

Program som använder omdirigeringar

MSAL v3.x kräver nu att programobjektet initieras. Initieringen har byggts in i API:et MsalRedirectComponent och handleRedirectObservable program som har implementerat omdirigeringsstrategier behöver inte göra ändringar. Ytterligare ändringar kan behöva göras om programmet använder fristående komponenter.

Mer information om hur du hanterar omdirigeringar i ditt program finns i guiden för omdirigeringar .

Program med popup-fönster

På grund av att initieringen är inbyggd i MsalRedirectComponent och handleRedirectObservablemåste program som endast använder popup-fönster antingen starta MsalRedirectComponent eller anropa handleRedirectObservable manuellt en gång för att initiera programobjektet.

Mer information finns i guiden för omdirigeringar .

allowNativeBrokerflaggan

Flaggan allowNativeBroker är nu aktiverad som standard i konfigurationerna. Om du använder en B2C-auktoritet kan du stänga av den så här:

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

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

MSAL Angular förväntar sig nu att ditt program har skapats med:

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

På grund av den här ändringen är MSAL Angular v3 inte bakåtkompatibel med tidigare versioner av Angular och RxJS och du kan behöva uppdatera programmet. Följ uppdateringsguiden för Angular för att uppdatera programmet till Angular 15, 16, 17 eller 18.

Precis som med MSAL Angular v2, krävs inte rxjs-compat.

Samples

Följande utvecklarexempel är nu tillgängliga:

Exemplen visar grundläggande konfiguration och användning, och kan förbättras och läggas till stegvis.

Här finns en lista över MSAL Angular v3-exempel och de funktioner som visas.