.NET 向け Microsoft Authentication Library

MSAL.NET (Microsoft。Identity.Client) は、Microsoft Entra IDからトークンを取得して、保護された Web API (Microsoft API または Microsoft Entra ID に登録されたアプリケーション) にアクセスできるようにする認証ライブラリです。

MSAL.NET は、複数の.NET プラットフォーム (デスクトップ、モバイル、Web) で利用できます。

サポートされているプラットフォームとアプリケーション アーキテクチャ

MSAL.NET では、次のようなさまざまなアプリケーション トポロジがサポートされています。

  • ユーザーの代わりに Microsoft Graph APIを呼び出すネイティブ クライアント (モバイルまたはデスクトップ アプリケーション)。
  • ユーザーの代わりに、またはユーザーなしで Microsoft Graph APIを呼び出すデーモン、サービス、または Web クライアント (Web アプリまたは Web API)。

サポートされているシナリオの詳細については、「 シナリオ」を参照してください。

MSAL.NET では、.NET.NET Framework、.NET MAUIなど、複数のプラットフォームがサポートされます

Note

すべての認証機能がすべてのプラットフォームで使用できるわけではありません。

  • モバイル プラットフォームでは、機密クライアント フローは許可されません。 これらはバックエンドとして機能するためのものではありません。また、シークレットを安全に格納することはできません。
  • パブリック クライアント (モバイルとデスクトップ) では、既定のブラウザーとリダイレクト URI はプラットフォームによって異なり、ブローカーの可用性は異なります ( ブラウザーの使用ドキュメントの詳細)。

Note

MSAL.NET は、ID プロバイダー (IDP) としてMicrosoft Entra IDで使用できるように最適化されています。 OAuth 2 をサポートするサード パーティの IDP で MSAL.NET を使用することは可能ですが。 0 (特に、組み込みブラウザーまたはシステム ブラウザー ( ブラウザーの使用ドキュメントを参照) を使用する場合)、相互運用性は保証されません。 Microsoftでは、サード パーティの IDP 統合に起因する問題のサポートは提供されません。 このようなシナリオはベスト エフォートと見なされ、対処できない可能性があります。

Note

MSAL.NET バージョン 4.61.0 以降では、ユニバーサル Windows プラットフォーム、Xamarin Android、iOS Xamarinはサポートされません。 この非推奨化については、「Announcing the Upcoming Deprecation of MSAL.NET for Xamarin and UWP」で詳しく説明しています。

MSAL.NET を使用する理由

MSAL.NET には、トークンを取得するいくつかの方法が用意されています。 MSAL.NET の使用は、汎用 OAuth ライブラリを使用したり、プロトコルに対する呼び出しを記述したりするよりも簡単です。 MSAL.NET には、開発者ワークフローを簡略化する、すぐに使用できるいくつかの利点があります。

  • 有効期限が近づくと、トークンキャッシュリフレッシュ トークンを代わりに保持します。
  • アプリケーションでサインインする対象ユーザー (組織、複数の組織、職場、学校、Microsoft個人アカウント、Microsoft Entra 外部 IDを使用したソーシャル ID、ソブリン クラウドと国内クラウドのユーザー) を指定するのに役立ちます。
  • 構成ファイルを使用してアプリケーションを設定するのに役立ちます。
  • アクション可能な例外、ログ記録、テレメトリを公開することで、アプリのトラブルシューティングに役立ちます。

MSAL.NET の使用を開始する

  1. MSAL.NET の使用シナリオについて説明します。
  2. アプリをMicrosoft Entra IDに登録します
  3. クライアント アプリケーションの種類 (パブリック クライアントと機密クライアント) について説明します。
  4. 保護された API にアクセスするための トークンの取得 について説明します。

Considerations

MSAL.NET はトークンを取得するために使用されます。 Web API の保護には使用されません。 Microsoft Entra IDを使用した Web API の保護に関心がある場合は、次のページを参照してください。

Azure Active Directory認証ライブラリ (ADAL) からの移行

.NETのMicrosoft Authentication Library (MSAL) は、認証トークンの取得に使用できるサポートされているライブラリです。 ユーザーまたは組織が Azure Active Directory 認証ライブラリ (ADAL) を使用している場合は、MSAL に移行する必要があります。 ADAL は 2023 年 6 月 30 日に終了しました。

Note

ADAL は 2023 年 6 月 30 日以降非推奨ですが、基になるエンドポイントはアクティブなままであるため、ADAL に依存するアプリケーションは中断しないでください。 ただし、ADAL の新機能やサポートは提供されません。

リリース

以前のリリースについては、GitHubのリリースを参照してください。

進行中のリリースと今後のリリースについては、「 マイルストーン」を参照してください。

バージョン管理の詳細については、「セマンティック バージョン管理 - パブリック API の変更を理解するための API 変更管理 MSAL.NET 参照してください。

Samples

包括的なサンプル リストを参照してください