Microsoft Authentication Library für JavaScript (MSAL.js)

Die Microsoft Authentication Library für JavaScript ermöglicht sowohl clientseitigen als auch serverseitigen JavaScript-Anwendungen die Authentifizierung von Benutzern mithilfe von Microsoft Entra ID für Geschäfts- und Schulkonten, Microsoft persönlichen Konten (MSA) und identitätsanbietern für soziale Netzwerke wie Facebook, Google, LinkedIn, Microsoft Konten usw. über Azure AD B2C-Dienst. Außerdem ermöglicht es Ihrer App, Token für den Zugriff auf Microsoft Cloud Dienste wie Microsoft Graph abzurufen.

Kern- und Wrapperbibliotheken

Der lib Ordner enthält den Quellcode für MSAL.js Bibliotheken in der aktiven Entwicklung. Außerdem finden Sie alle Details zum Installieren der Bibliotheken in den jeweiligen README.md Dateien.

Neuerungen in v5

MSAL.js v5 führt mehrere wichtige Features ein:

  • Cross-Origin-Opener-Policy (COOP)-Unterstützung: Ermöglicht Authentifizierungsabläufe in Pop-ups in Umgebungen mit strengen COOP-Headern.
  • McP-Authentifizierung (Model Context Protocol): Unterstützt Authentifizierungsflüsse für KI-Agent- und Toolintegrationen.
  • Geschachtelte App-Authentifizierung (NAA): Ermöglicht die Authentifizierung für Apps, die in Microsoft 365-Hostanwendungen unter Verwendung von createNestablePublicClientApplication ausgeführt werden.
  • localStorage AES-GCM Verschlüsselung: Verschlüsselt den Tokencache in localStorage mithilfe von AES-GCM zur Verbesserung der Sicherheit.
  • Factoryfunktionen: Verwenden Sie createStandardPublicClientApplication oder createNestablePublicClientApplication, um MSAL mit asynchroner Konfiguration zu initialisieren.
  • Plattformbroker(WAM)-Integration: Aktivieren Sie Windows Authentication Manager (WAM)-Brokerauthentifizierung über die allowPlatformBroker Konfigurationsoption.

Migrationshandbücher zu MSAL JavaScript v5.x finden Sie unter:

Bibliotheken im langfristigen Support (Long-Term Support, LTS)

Die folgende Tabelle zeigt die aktiven und LTS-Versionen für jede MSAL.js-Bibliothek:

Bibliothek Aktive Version LTS-Version
msal-browser v5.x v2.x
msal-node v5.x v1.x
msal-react v5.x v1.x
msal-angular v5.x v2.x

Die LTS-Bibliotheken, die im msal-lts-Branch gehostet werden, werden nicht mehr aktiv weiterentwickelt, erhalten aber weiterhin Support für kritische Sicherheitskorrekturen.

Note

Der msal-lts Zweig enthält auch v3.x und v4.x von msal-browser, für die der aktive Support ausgelaufen ist.

Paketstruktur

Es gibt eine Reihe verschiedener Pakete, die für verschiedene Plattformen vorgesehen sind. Sie können die Beziehung zwischen Paketen und verschiedenen Authentifizierungsflüssen sehen, die sie in der folgenden Paketstruktur implementieren.

Screenshot des MSAL JavaScript-Paketstrukturdiagramms.

Beispiele

Die code samples zeigen die Verwendung der Microsoft-Authentifizierungsbibliotheken für JavaScript mit der Identitätsplattform. Jedes Codebeispiel enthält eine README.md Datei, die beschreibt, wie das Projekt erstellt wird (falls zutreffend), und die Beispielanwendung ausführen.

Eine vollständige Liste der Beispiele für JavaScript und andere Sprachen, Frameworks und Plattformen finden Sie in den Microsoft Identity Platform Codebeispielen.

Für systemeigene Authentifizierungsfeatures veranschaulichen die Beispiel-Apps , wie die systemeigene Authentifizierung in React- und Angular-Webanwendungen verwendet wird. Jedes Codebeispiel enthält eine README.md Datei, die beschreibt, wie das Projekt erstellt und die Beispielanwendung ausgeführt wird. Die aktuelle systemeigene Authentifizierungs-API unterstützt keine cross-Origin Resource Sharing (CORS), die Beispiel-App wird mit lokalem Proxy ausgeführt.

Paketversionsverwaltung

Alle unsere Bibliotheken folgen der semantischen Versionsverwaltung. Es wird empfohlen, die neueste Version jeder Bibliothek zu verwenden, um sicherzustellen, dass Sie über die neuesten Sicherheitspatches und Fehlerbehebungen verfügen.

Sicherheitsberichte

Wenn Sie ein Sicherheitsproblem mit unseren Bibliotheken oder Diensten finden, melden Sie es dem Microsoft Security Response Center (MSRC) mit möglichst vielen Details.