JavaScript 用 Microsoft Authentication Library (MSAL.js)

JavaScript 用 Microsoft Authentication Libraryを使用すると、クライアント側とサーバー側の JavaScript アプリケーションの両方で、職場と学校のアカウント、Microsoft個人用アカウント (MSA)、ソーシャル ID プロバイダーなどのMicrosoft Entra IDを使用してユーザーを認証できます。Azure AD B2C サービスを通じて、Facebook、Google、LinkedIn、Microsoft アカウントなど。 また、アプリがトークンを取得して、Microsoft GraphなどのMicrosoft Cloud サービスにアクセスすることもできます。

コア ライブラリとラッパー ライブラリ

lib フォルダーには、開発中の MSAL.js ライブラリのソース コードが含まれています。 また、ライブラリの インストール に関するすべての詳細は、それぞれの README.md ファイルにも表示されます。

v5 の新機能

MSAL.js v5 には、いくつかの主要な機能が導入されています。

  • クロスオリジン -Opener-Policy (COOP) のサポート: 厳密な COOP ヘッダーを持つ環境でポップアップ認証フローを有効にします。
  • モデル コンテキスト プロトコル (MCP) 認証: AI エージェントとツールの統合のための認証フローをサポートします。
  • ネストされたアプリ認証 (NAA):createNestablePublicClientApplicationを使用して、Microsoft 365 ホスト アプリ内で実行されるアプリの認証を有効にします。
  • localStorage AES-GCM 暗号化: セキュリティを強化するために、AES-GCM を使用して localStorage 内のトークン キャッシュを暗号化します。
  • ファクトリ関数: createStandardPublicClientApplication または createNestablePublicClientApplication を使用して、非同期構成で MSAL を初期化します。
  • プラットフォーム ブローカー (WAM) 統合: allowPlatformBroker構成オプションを使用して、Windows Authentication Manager (WAM) ブローカー認証を有効にします。

MSAL JavaScript v5.x への移行ガイドについては、次を参照してください。

長期サポート (LTS) 対象ライブラリ

次の表に、各 MSAL.js ライブラリのアクティブバージョンと LTS バージョンを示します。

Library アクティブなバージョン LTS のバージョン
msal-browser v5.x v2.x
msal-node v5.x v1.x
msal-react v5.x v1.x
msal-angular v5.x v2.x

msal-lts ブランチでホストされている LTS ライブラリは、アクティブな開発ではなくなりましたが、引き続き重要なセキュリティ バグ修正のサポートを受けています。

Note

msal-lts ブランチには、アクティブなサポートから移行された msal-browser の v3.x と v4.x も含まれています。

パッケージ構造

プラットフォームごとにさまざまなパッケージが用意されています。 パッケージと、パッケージが実装するさまざまな認証フローの関係は、以下のパッケージ構造で確認できます。

MSAL JavaScript パッケージ構造図のスクリーンショット。

Samples

このcode samplesでは、ID プラットフォームでの JavaScript 用のMicrosoft認証ライブラリの使用方法を示します。 各コード サンプルには、プロジェクトをビルドし (該当する場合)、サンプル アプリケーションを実行する方法を説明する README.md ファイルが含まれています。

JavaScript およびその他の言語、フレームワーク、プラットフォームを対象とするサンプルの完全な一覧については、Microsoft ID プラットフォームコード サンプルを参照してください。

ネイティブ認証機能の場合、 サンプル アプリ は React および Angular Web アプリケーションでネイティブ認証を使用する方法を示しています。 各コード サンプルには、プロジェクトをビルドしてサンプル アプリケーションを実行する方法を説明する README.md ファイルが含まれています。 現在のネイティブ認証 API はクロスオリジン リソース共有 (CORS) をサポートしていません。サンプル アプリはローカル プロキシを使用して実行されます。

パッケージのバージョン管理

すべてのライブラリは、 セマンティック バージョン管理に従います。 最新バージョンの各ライブラリを使用して、最新のセキュリティ パッチとバグ修正を確実に行うことをお勧めします。

セキュリティ レポート

ライブラリまたはサービスでセキュリティの問題が見つかる場合は、できるだけ詳しくMicrosoft Security Response Center (MSRC) に報告してください