將應用程式移轉至 Microsoft 驗證程式庫 (MSAL)

如果您的任何應用程式使用 Azure Active Directory 驗證連結庫 (ADAL) 進行驗證和授權功能,是時候將它們移轉至 Microsoft 驗證連結庫 (MSAL) 了。

  • ADAL 的所有 Microsoft 支援和開發,包括安全性修正,已於 2023 年 6 月 30 日結束。
  • 在淘汰日期之前,沒有 ADAL 功能版本或新平臺版本。
  • 自 2020 年 6 月 30 日起,ADAL 尚未新增任何新功能。

警告

Azure Active Directory 驗證連結庫 (ADAL) 已被取代。 雖然使用ADAL的現有應用程式會繼續運作,但 Microsoft 將不再在ADAL上發行安全性修正程式。 使用 Microsoft 驗證連結庫 (MSAL) 以避免讓應用程式的安全性面臨風險。

為什麼要切換至 MSAL?

如果您已使用 Azure AD (v1.0) 端點開發應用程式,您可能會使用 ADAL。 由於 Microsoft 身分識別平台 (v2.0) 端點已大幅變更,因此新連結庫 (MSAL) 已完全針對新端點建置。

MSAL 的設計目的是要啟用安全的解決方案,而開發人員不需要擔心實作詳細數據。 其可簡化和管理取得、管理、快取和重新整理令牌,並使用復原的最佳做法。 建議您使用 MSAL 來 增加所開發用戶端應用程式中的驗證和授權復原能力。

MSAL 比 ADAL 提供多項優點,包括下列功能:

功能 MSAL ADAL
安全性
2023 年 6 月以外的安全性修正 2023 年 6 月以外的安全性修正 - MSAL 提供此功能 2023 年 6 月以外的安全性修正 - ADAL 不提供此功能
根據 Microsoft Graph 的原則或重大事件,主動重新整理和撤銷令牌,以及其他支持 持續存取評估 (CAE) 的 API。 根據 Microsoft Graph 的原則或重大事件,主動重新整理和撤銷令牌,以及其他支持持續存取評估 (CAE) 的 API - MSAL 提供此功能 根據 Microsoft Graph 的原則或重大事件,主動重新整理和撤銷令牌,以及其他支持持續存取評估 (CAE) 的 API - ADAL 不提供此功能
符合 OAuth v2.0 和 OpenID 連線 的標準(OIDC) 符合 OAuth v2.0 和 OpenID 連線 (OIDC) 的標準 - MSAL 提供此功能 符合 OAuth v2.0 和 OpenID 連線 (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 不提供此功能
節流 節流 - 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) 2019 或更新版本取得令牌。 MSAL 不支援舊版 AD FS,包括 AD FS 2016。

如果您需要繼續使用 AD FS,您應該先升級至 AD FS 2019 或更新版本,再將應用程式從 ADAL 更新為 MSAL。

如何移轉至 MSAL

開始移轉之前,您必須識別哪些應用程式使用ADAL進行驗證。 請依照本文中的步驟來取得清單,方法是使用 Azure 入口網站:

識別使用 ADAL 的應用程式之後,請根據您的應用程式類型將其移轉至 MSAL:

單頁應用程式 (SPA)

MSAL 支援各種應用程式類型和案例。 請參閱數種應用程式類型的 Microsoft 驗證連結庫支援。

下列連結提供不同平臺的ADAL至 MSAL 移轉指南:

移轉說明

如果您有將應用程式從 ADAL 移轉至 MSAL 的問題,以下是一些選項:

  • 在 Microsoft Q&A張貼您的問題,並以標記。[azure-ad-adal-deprecation]
  • 在連結庫的 GitHub 存放庫中開啟問題。 如需每個程式庫存放庫的連結,請參閱 MSAL 概觀文章的語言和架構一節。

如果您在開發應用程式時與獨立軟體廠商(ISV)合作,建議您直接與他們連絡,以瞭解其 MSAL 的移轉旅程。

下一步

如需 MSAL 的詳細資訊,包括使用方式資訊,以及不同程式設計語言和應用程式類型可用的連結庫,請參閱: