Перенос приложений на библиотеку аутентификации Майкрософт (MSAL)

Если любое из приложений использует библиотеку проверки подлинности Azure Active Directory (ADAL) для проверки подлинности и авторизации, пришло время перенести их в библиотеку проверки подлинности Майкрософт (MSAL).

  • Все средства поддержки и разработки Майкрософт для ADAL, включая исправления безопасности, закончились 30 июня 2023 года.
  • Не было выпусков компонентов ADAL или новых выпусков версий платформы, запланированных до даты отмены.
  • С 30 июня 2020 года в ADAL не добавлено никаких новых функций.

Предупреждение

Библиотека проверки подлинности Azure Active Directory (ADAL) устарела. Хотя существующие приложения, использующие ADAL, будут продолжать работать, корпорация Майкрософт больше не будет выпускать исправления безопасности в ADAL. Используйте библиотеку проверки подлинности Майкрософт (MSAL), чтобы избежать риска безопасности приложения.

Для чего нужно переходить на MSAL?

Если вы разработали приложения с помощью конечной точки Azure AD (версии 1.0), скорее всего, вы используете ADAL. Так как конечная точка платформа удостоверений Майкрософт (версия 2.0) значительно изменилась, новая библиотека (MSAL) была полностью создана для новой конечной точки.

Библиотека MSAL предназначена для того, чтобы разработчики могли создать безопасное решения, не беспокоясь о реализации. Она упрощает управление получением, администрированием, кэшированием и обновлением маркеров и использует рекомендации по устойчивости. Мы рекомендуем использовать MSAL для повышения устойчивости проверки подлинности и авторизации в клиентских приложениях, которые вы разрабатываете.

MSAL имеет различные преимущества по сравнению с ADAL, включая следующие функции:

Функции MSAL ADAL
Безопасность
Исправления безопасности за июнь 2023 г. Исправления безопасности за июнь 2023 г. — MSAL предоставляет эту функцию. Исправления безопасности за июнь 2023 г. — ADAL не предоставляет эту функцию.
Заблаговременное обновление и отзыв маркеров на основе политики или критических событий для Microsoft Graph и других интерфейсов API, поддерживающих Непрерывную оценку доступа (CAE). Заблаговременное обновление и отзыв маркеров на основе политики или критических событий для Microsoft Graph и других интерфейсов API, поддерживающих непрерывную оценку доступа (CAE) — эта функция будет доступна пользователям MSAL Заблаговременное обновление и отзыв маркеров на основе политики или критических событий для Microsoft Graph и других интерфейсов API, поддерживающих непрерывную оценку доступа (CAE) — эта функция будет недоступна пользователям ADAL
Стандарты, совместимые с OAuth 2.0 и OpenID Connect (OIDC) Стандарты, совместимые с OAuth 2.0 и OpenID Connect (OIDC) — эта функция будет доступна пользователям MSAL Стандарты, совместимые с OAuth 2.0 и OpenID Connect (OIDC) — эта функция будет недоступна пользователям ADAL
Учетные записи пользователей и опыт работы
Учетные записи Microsoft Entra Учетные записи Microsoft Entra — MSAL предоставляет функцию Учетные записи Microsoft Entra — ADAL предоставляет эту функцию.
Учетная запись Майкрософт (MSA) Учетная запись Майкрософт (MSA) — эта функция будет доступна пользователям MSAL Учетная запись Майкрософт (MSA) — эта функция будет доступна пользователям ADAL
Учетные записи Azure AD B2C Учетные записи Azure AD B2C — эта функция будет доступна пользователям MSAL Учетные записи Azure AD B2C — эта функция будет доступна пользователям ADAL
Лучшая реализация функции единого входа Лучшая реализация функции единого входа — эта функция будет доступна пользователям MSAL Лучшая реализация функции единого входа — эта функция будет доступна пользователям ADAL
Интерфейсы проверки подлинности
Непрерывная оценка доступа с помощью упреждающего обновления маркера Упреждающее возобновление действия токена — эта функция будет доступна пользователям MSAL Упреждающее возобновление действия токена — эта функция будет доступна пользователям ADAL
Регулирование Регулирование — эта функция будет доступна пользователям MSAL Регулирование — эта функция будет доступна пользователям ADAL
Поддержка брокера проверки подлинности Политика условного доступа на основе устройств — MSAL имеет встроенную функцию Политика условного доступа на основе устройств — ADAL не предоставляет эту функцию.
Защита маркеров Защита маркеров — MSAL предоставляет функцию Защита маркеров — ADAL не предоставляет функцию

Дополнительные возможности MSAL через ADAL

  • Подтверждение наличия маркеров владения
  • Проверка подлинности на основе сертификатов (CBA) Microsoft Entra на мобильных устройствах
  • Системные браузеры на мобильных устройствах
  • Где ADAL имел только класс контекста проверки подлинности, MSAL предоставляет понятие коллекции клиентских приложений (общедоступный клиент и конфиденциальный клиент).

Поддержка AD FS в MSAL

Вы можете использовать MSAL.NET, MSAL Java, MSAL.js и MSAL Python для получения маркеров от службы федерации Active Directory (AD FS) (AD FS) 2019 или более поздней версии. Более ранние версии AD FS, включая AD FS 2016, не поддерживаются в MSAL.

Если необходимо продолжить использование AD FS, необходимо выполнить обновление до AD FS 2019 или более поздней версии, а затем обновить приложения ADAL до MSAL.

Миграция в MSAL

Перед началом миграции необходимо узнать, какие приложения используют ADAL для проверки подлинности. Выполните действия, описанные в этой статье, чтобы получить список с помощью портала Microsoft Azure:

После идентификации приложений, использующих ADAL, перенесите их в MSAL в зависимости от типа приложения:

Одностраничные (SPA)

MSAL поддерживает широкий спектр типов приложений и сценариев. Обратитесь к поддержке библиотеки проверки подлинности Майкрософт для нескольких типов приложений.

Руководство по миграции ADAL в MSAL для разных платформ доступно по следующим ссылкам:

Помощь при миграции

Если у вас возникли вопросы о миграции приложения из ADAL в MSAL, воспользуйтесь следующими вариантами:

  • Опубликуйте свой вопрос на сайте Microsoft Q&A, используя тег [azure-ad-adal-deprecation].
  • Откройте ошибку в репозитории GitHub библиотеки. Ссылки на репозиторий каждой библиотеки см. в разделе Языки и платформы из обзорной статьи о MSAL.

Если при разработке приложения вы сотрудничали с независимым поставщиком программного обеспечения (ISV), рекомендуется обратиться к нему напрямую, чтобы решить все вопросы с переходом на MSAL.

Следующие шаги

Дополнительные сведения о MSAL, включая сведения об использовании и о библиотеках, доступных для различных языков программирования и типов приложений, см. в следующих статьях: