Microsoft.Identity.Web を ASP.NET Framework と .NET Standard に統合する

Microsoft。Identity.Web は、Microsoft Entra ID認証を .NET Framework および .NET Standard アプリケーションに拡張します。 この記事は、シナリオに適したパッケージと統合パターンを選択するのに役立ちます。

シナリオを選択する

アプリケーションの種類に一致する統合パターンを選択します。 Microsoft Entraでは、Web アプリとバックグラウンド サービス用のさまざまなパッケージが提供されます。

MSAL.NET および Microsoft.Identity.Web パッケージ

コンソール アプリ、デーモン サービス、および Web 以外の.NET Framework アプリケーションの場合

Microsoft.Identity.Web.TokenCache と Microsoft.Identity.Web.Certificate パッケージを MSAL.NET と共に使用します。

  • トークン キャッシュのシリアル化 (SQL Server、Redis、Cosmos DB、PostgreSQL)
  • KeyVault、証明書ストア、またはファイル システムからの証明書の読み込み
  • コンソール アプリケーションとデーモン サービス
  • .NET Standard 2.0 ライブラリ

MSAL.NET とMicrosoft.Identity.Web ガイド


ASP.NET MVC/Web API の OWIN 統合

ASP.NET MVCおよび Web API アプリケーションの場合

Microsoft.Identity.Web.OWIN パッケージを使用して、フル機能の Web 認証を行います。

  • トークンの自動取得のための TokenAcquirerFactory
  • Microsoft Graphおよびダウンストリーム API に簡単にアクセスするためのコントローラー拡張機能
  • 分散トークン キャッシュのサポート
  • 段階的同意処理

OWIN 統合ガイド


統合オプションの比較

次の表は、2 つの統合アプローチの主な違いをまとめたものです。

特徴 MSAL.NET + TokenCache/Certificate OWIN 統合
パッケージ Microsoft.Identity.Web.TokenCache
Microsoft.Identity.Web.Certificate
Microsoft.Identity.Web.OWIN
ターゲット コンソールアプリ、デーモン、ワーカーサービス ASP.NET MVC、ASP.NET Web API
認証 手動 MSAL.NET 構成 自動 OWIN ミドルウェア
トークンの取得 マニュアルにIConfidentialClientApplication コントローラー拡張機能を使った自動操作
トークン キャッシュ すべてのプロバイダー (SQL、Redis、Cosmos、PostgreSQL) すべてのプロバイダー (SQL、Redis、Cosmos、PostgreSQL)
証明書の読み込み KeyVault(キー保管庫)、ストア(保存)、ファイル、Base64(ベース64) MSAL.NET 構成を使用する
Microsoft Graph 手動 GraphServiceClient セットアップ this.GetGraphServiceClient()
ダウンストリーム API トークンを使用した手動 HTTP 呼び出し this.GetDownstreamApi()
段階的同意 手動チャレンジ処理 自動 MsalUiRequiredException

利用可能なパッケージを確認する

Microsoft。Identity.Web 1.17+、ASP.NET Core以外の環境でMicrosoft ID ライブラリを使用できます。 次のパッケージは、.NET Framework と .NET Standard ワークロードを対象にしています。

利用可能なパッケージ

パッケージ Purpose ターゲット アプリケーション
Microsoft。Identity.Web.TokenCache MSAL.NET のトークン キャッシュ シリアライザー コンソール、デーモン、ワーカー サービス
Microsoft.Identity.Web.Certificate 証明書の読み込みユーティリティ コンソール、デーモン、ワーカー サービス
Microsoft。Identity.Web.OWIN OWIN ミドルウェアの統合 ASP.NET MVC、ASP.NET Web API

パッケージの利点を理解する

これらのパッケージは、ASP.NET Coreを必要とせずに、一般的な認証タスクを簡略化します。

特徴 給付金
トークン キャッシュのシリアル化 メモリ内、SQL Server、Redis、Cosmos DB、PostgreSQL 用の再利用可能なキャッシュ アダプター
証明書ヘルパー KeyVault、ファイル システム、または証明書ストアからの証明書の読み込みの簡略化
OWIN 統合 ASP.NET MVC/Web API のシームレスな認証
.NET Standard 2.0 .NET Framework 4.7.2 以降、.NET Core、.NET 5 以降と互換性があります
最小依存関係 ASP.NET Core依存関係のない対象パッケージ

サンプル アプリケーションを調べる

これらのサンプルは、独自の実装の開始点として使用します。

MSAL.NET サンプル

OWIN のサンプル