Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если у вас есть веб-приложение или API, запущенное в Служба приложений Azure, вы можете ограничить доступ к нему на основе удостоверения пользователей или приложений, запрашивающих его. Служба приложений предлагает несколько решений проверки подлинности для достижения этой цели. В этой статье вы узнаете о различных вариантах проверки подлинности, их преимуществах и недостатках, а также о том, какое решение проверки подлинности следует использовать для определенных сценариев.
Решения проверки подлинности
- Встроенная аутентификация в Служба приложений Azure: позволяет выполнять вход пользователей и получать доступ к данным, применяя минимальное количество кода или вообще без него в вашем веб-приложении, RESTful API или серверной части мобильного приложения. Он встроен непосредственно на платформу и не требует использования какого-либо языка, библиотеки, опыта безопасности или даже любого кода.
- Microsoft Authentication Library (MSAL): позволяет разработчикам получать маркеры безопасности из платформа удостоверений Майкрософт для проверки подлинности пользователей и доступа к защищенным веб-API. Доступны для нескольких поддерживаемых платформ и платформ, это библиотеки общего назначения, которые можно использовать в различных размещенных средах. Разработчики также могут интегрироваться с несколькими поставщиками входа, такими как Microsoft Entra, Facebook, Google, X.
- Microsoft.Identity.Web: библиотека более высокого уровня, оборачивающая MSAL.NET, она предоставляет набор абстракций ASP.NET Core, упрощающих добавление аутентификации в веб-приложения и веб-API, интегрируемых с платформой идентификации Microsoft. Он предоставляет удобный уровень API, объединяющий ASP.NET Core, его промежуточное программное обеспечение для аутентификации и MSAL.NET. Эту библиотеку можно использовать в приложениях в различных хостинговых средах. Вы можете интегрироваться с несколькими поставщиками входа, такими как Microsoft Entra, Facebook, Google и X.
Рекомендации по сценариям
В следующей таблице перечислено каждое решение для аутентификации и некоторые важные факторы, которые следует учитывать при его использовании.
| Метод аутентификации | Когда использовать |
|---|---|
| Встроенная проверка подлинности службы приложений | * Требуется меньше кода для владения и управления. * Язык и пакеты SDK вашего приложения не предоставляют пользователю возможности входа или авторизации. * У вас нет возможности изменять код приложения (например, при переносе устаревших приложений). * Необходимо обрабатывать проверку подлинности с помощью конфигурации, а не кода. * Вам нужно авторизовать внешних или социальных пользователей. |
| Библиотека проверки подлинности Майкрософт (MSAL) | * Требуется решение для кода на одном из нескольких разных языков. * Необходимо добавить пользовательскую логику авторизации. * Необходимо поддерживать добавочное согласие. * Вам нужна информация о вошедшем пользователе в вашем коде. * Вам нужно авторизовать внешних или социальных пользователей. * Приложение должно обрабатывать срок действия маркера доступа без повторного входа пользователя. |
| Microsoft. Identity.Web | * У вас есть приложение ASP.NET Core. * Вам нужна поддержка единого входа в интегрированной среде разработки во время локальной разработки. * Необходимо добавить пользовательскую логику авторизации. * Необходимо поддерживать добавочное согласие. * Вам нужен условный доступ в веб-приложении. * Вам нужна информация о вошедшем пользователе в вашем коде. * Вам нужно авторизовать внешних или социальных пользователей. * Приложение должно обрабатывать срок действия маркера доступа без повторного входа пользователя. |
В следующей таблице перечислены сценарии проверки подлинности и используемые решения проверки подлинности.
| Сценарий | Служба App Service: встроенная проверка подлинности | Библиотека проверки подлинности Майкрософт | Microsoft. Identity.Web |
|---|---|---|---|
| Требуется быстрый и простой способ ограничить доступ к пользователям в организации? | ✅ | ❌ | ❌ |
| Не удается изменить код приложения (сценарий миграции приложений)? | ✅ | ❌ | ❌ |
| Язык и библиотеки вашего приложения поддерживают вход или авторизацию пользователей? | ❌ | ✅ | ✅ |
| Даже если вы можете использовать программное решение, вы предпочли бы не использовать библиотеки? Хотите избежать бремени обслуживания? | ✅ | ❌ | ❌ |
| Нужно ли веб-приложению предоставлять добавочное согласие? | ❌ | ✅ | ✅ |
| Вам нужен условный доступ в веб-приложении? | ❌ | ❌ | ✅ |
| Приложение должно обрабатывать срок действия маркера доступа без повторного входа пользователя (используйте маркер обновления)? | ✅ | ✅ | ✅ |
| Нужна пользовательская логика авторизации или информация о вошедшем пользователе? | ❌ | ✅ | ✅ |
| Требуется войти пользователей из внешних или социальных поставщиков удостоверений? | ✅ | ✅ | ✅ |
| У вас есть приложение ASP.NET Core? | ✅ | ❌ | ✅ |
| У вас есть одностраничное приложение или статическое веб-приложение? | ✅ | ✅ | ✅ |
| Хотите Visual Studio интеграцию? | ❌ | ❌ | ✅ |
| Нужна поддержка единого входа в интегрированной среде разработки во время локальной разработки? | ❌ | ❌ | ✅ |
Следующие шаги
Чтобы приступить к работе с встроенной аутентификацией Службы приложений, прочитайте:
Чтобы приступить к работе с Microsoft Authentication Library (MSAL), прочтите:
- Добавить функцию входа с помощью Microsoft в веб-приложение
- Доступ к веб-API разрешен только для пользователей, прошедших проверку подлинности
- Вход пользователей в одностраничное приложение (SPA)
Чтобы начать использование Microsoft.Identity.Web, прочитайте следующее:
Узнайте больше о встроенных функциях проверки подлинности и авторизации в службе приложений .