Microsoft Authentication Library (MSAL) へのアプリケーションの移行

お使いのアプリケーションで認証と承認の機能に Azure Active Directory 認証ライブラリ (ADAL) を使用している場合は、Microsoft Authentication Library (MSAL) に移行する時期です。

  • セキュリティ修正プログラムを含め、ADAL についてのすべての Microsoft のサポートと開発は、2023 年 6 月 30 日に終了しました。
  • 廃止日より前に、ADAL 機能リリースや新しいプラットフォーム バージョンのリリースは予定されていません。
  • 2020 年 6 月 30 日以降、ADAL に新しい機能は追加されていません。

警告

Azure Active Directory 認証ライブラリ (ADAL) は非推奨です。 ADAL を使用している既存のアプリは引き続き機能しますが、Microsoft は今後 ADAL のセキュリティ修正プログラムをリリースしません。 Microsoft Authentication Library (MSAL) を使用して、アプリのセキュリティを危険にさらさないようにする必要があります。

MSAL に切り替える理由

Azure AD (v1.0) エンドポイントを使用してアプリを開発したことがある場合は、ADAL を使用している可能性が高くなります。 Microsoft ID プラットフォーム (v2.0) エンドポイントが大幅に変更されたため、新しいエンドポイント用にまったく新しいライブラリ (MSAL) が構築されました。

MSAL は、開発者が実装の詳細について心配することなく、セキュリティで保護されたソリューションを実現できるように設計されています。 これにより、トークンの取得、管理、キャッシュ、および更新が簡素化されて管理され、回復性のためのベスト プラクティスが使用されます。 MSAL を使用して、開発するクライアント アプリケーションでの認証と承認の回復性を向上させることをお勧めします。

MSAL には、次の機能を含め、ADAL と比較して複数の利点があります。

機能 MSAL ADAL
Security
2023 年 6 月以降のセキュリティ修正プログラム 2023 年 6 月以降のセキュリティ修正プログラム: MSAL ではこの機能が提供されます 2023 年 6 月以降のセキュリティ修正プログラム: ADAL ではこの機能が提供されません
継続的アクセス評価 (CAE) をサポートする Microsoft Graph およびその他の API のポリシーまたは重要なイベントに基づいてトークンを事前に更新および取り消す。 継続的アクセス評価 (CAE) をサポートする Microsoft Graph およびその他の API のポリシーまたは重要なイベントに基づいてトークンを事前に更新および取り消す: MSAL ではこの機能が提供されます 継続的アクセス評価 (CAE) をサポートする Microsoft Graph およびその他の API のポリシーまたは重要なイベントに基づいてトークンを事前に更新および取り消す: ADAL ではこの機能が提供されません
OAuth v2.0 および OpenID Connect (OIDC) の標準への準拠 OAuth v2.0 および OpenID Connect (OIDC) の標準への準拠: MSAL ではこの機能が提供されます OAuth v2.0 および OpenID Connect (OIDC) の標準への準拠: ADAL ではこの機能が提供されません
ユーザー アカウントとエクスペリエンス
Microsoft Entra アカウント Microsoft Entra アカウント - MSAL で提供される機能 Microsoft Entra アカウント - ADAL で提供される機能
Microsoft アカウント (MSA) Microsoft アカウント (MSA): MSAL ではこの機能が提供されます Microsoft アカウント (MSA): ADAL ではこの機能が提供されません
Azure AD B2C アカウント Azure AD B2Cアカウント: MSAL ではこの機能が提供されます Azure AD B2Cアカウント: ADAL ではこの機能が提供されません
最適なシングル サインオン エクスペリエンス 最適なシングル サインオン エクスペリエンス: MSAL ではこの機能が提供されます 最適なシングル サインオン エクスペリエンス: ADAL ではこの機能が提供されません
認証エクスペリエンス
事前のトークン更新による継続的アクセス評価 トークンの事前更新: MSAL ではこの機能が提供されます トークンの事前更新: ADAL ではこの機能が提供されません
Throttling 調整: MSAL ではこの機能が提供されます 調整: ADAL ではこの機能が提供されません
認証ブローカーのサポート デバイスベースの条件付きアクセス ポリシー - MSAL に組み込まれている機能 デバイスベースの条件付きアクセス ポリシー - ADAL で提供されない機能
トークン保護 トークン保護 - MSAL で提供される機能 トークン保護 - ADAL で提供されない機能

ADAL を介した MSAL の追加機能

  • 所有証明トークン
  • モバイルでの Microsoft Entra 証明書ベースの認証 (CBA)
  • モバイル デバイス上のシステム ブラウザー
  • ADAL に認証コンテキスト クラスのみが含まれている場合、MSAL はクライアント アプリ (パブリック クライアントと機密クライアント) のコレクションの概念を公開します。

MSAL での AD FS のサポート

MSAL.NET、MSAL Java、MSAL.js、MSAL Python を使用して、Active Directory フェデレーション サービス (AD FS) (AD FS) 2019 以降からトークンを取得できます。 AD FS 2016 を含め、以前のバージョンの AD FS は MSAL ではサポートされていません。

AD FS を引き続き使用する必要がある場合は、ADAL から MSAL にアプリケーションを更新する前に、AD FS 2019 以降にアップグレードする必要があります。

MSAL への移行方法

移行を開始する前に、認証に ADAL を使用しているアプリを特定する必要があります。 こちらの記事の手順に従って、Azure portal を使用して一覧を取得してください。

ADAL を使用しているアプリケーションを特定した後、アプリの種類に応じて MSAL に移行します。

シングルページ アプリ (SPA)

MSAL は、さまざまなアプリケーションの種類とシナリオをサポートします。 いくつかのアプリケーションの種類に対する Microsoft 認証ライブラリのサポートに関する記事を参照してください。

次のリンクからさまざまなプラットフォームの ADAL から MSAL への移行ガイドを入手できます。

移行のヘルプ

ADAL から MSAL へのアプリの移行について質問がある場合、こちらにいくつかのオプションを示しています。

  • Microsoft Q&A で、タグ [azure-ad-adal-deprecation] を使用して質問を投稿する。
  • ライブラリの GitHub リポジトリでイシューを開く。 各ライブラリのリポジトリへのリンクについては、MSAL の概要に関する記事の「言語とフレームワーク」セクションを参照してください。

アプリケーションの開発で独立系ソフトウェア ベンダー (ISV) と提携している場合は、MSAL への移行手順を把握するために、先方に直接連絡することをお勧めします。

次のステップ

MSAL の詳細、たとえば使用情報や、さまざまなプログラミング言語とアプリケーションの種類で使用できるライブラリについては、こちらを参照してください。