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