Поделиться через


Классическое приложение, вызывающее интерфейсы веб-API: регистрация приложения

В этой статье рассматриваются особенности регистрации для классического приложения.

Поддерживаемые типы счетов

Типы учетных записей, поддерживаемые в классическом приложении, зависят от интерфейса, который вы хотите активировать. Из-за этой связи поддерживаемые типы учетных записей зависят от потоков, которые вы хотите использовать.

Аудитория для интерактивного получения маркера

Если в классическом приложении используется интерактивная аутентификация, вы можете выполнять вход пользователей в систему под любым типом учетной записи.

Аудитория для потоков без взаимодействия с пользователем в классическом приложении

  • Чтобы использовать Встроенную проверку подлинности Windows или имя пользователя и пароль, приложение должно выполнять вход пользователей в систему в вашем собственном арендаторе, например, если вы являетесь разработчиком бизнес-приложений (LOB). Кроме того, в организациях Microsoft Entra приложение должно войти пользователей в собственный клиент, если это сценарий поставщика программного обеспечения. Эти потоки аутентификации не поддерживаются для личных учетных записей Майкрософт.
  • При входе пользователей в систему с удостоверениями социальных сетей, которые имеют пропускные полномочия и политику "бизнес — потребитель" (B2C), можно использовать только интерактивную аутентификацию или аутентификацию с помощью имени пользователя и пароля.

URI перенаправления

Коды URI перенаправления для использования в классическом приложении зависят от потока, который вы хотите использовать.

Укажите URI перенаправления для приложения, настроив параметры платформы для приложения в Регистрация приложений в Центре администрирования Microsoft Entra.

  • Для приложений, которые используют Web Authentication Manager (WAM), URI перенаправления не нужно настраивать в MSAL, но они должны быть настроены в регистрации приложения.

  • Для приложений, использующих интерактивную аутентификацию:

    • Приложения, использующие встроенные браузеры: https://login.microsoftonline.com/common/oauth2/nativeclient (Примечание. Если в приложении всплывает окно, которое обычно не содержит адресной строки, используется встроенный браузер.)
    • Приложения, использующие системные браузеры: http://localhost (Примечание. Если приложение принесет браузер по умолчанию вашей системы (например, Edge, Chrome, Firefox и т. д.), чтобы посетить портал входа Майкрософт, он использует "системный браузер".

    Внимание

    По соображениям безопасности рекомендуем явно задать https://login.microsoftonline.com/common/oauth2/nativeclient или http://localhost в качестве URI перенаправления. Некоторые библиотеки аутентификации, например MSAL.NET, используют значение по умолчанию urn:ietf:wg:oauth:2.0:oob, если не указан другой URI перенаправления (не рекомендуется). Это значение по умолчанию будет обновлено как критическое изменение в следующем основном выпуске.

  • Если вы создаете собственное приложение Objective-C или Swift для macOS, зарегистрируйте URI перенаправления на основе идентификатора пакета приложения в следующем формате: msauth.<your.app.bundle.id>://auth. Замените <your.app.bundle.id> идентификатором пакета своего приложения.

  • Если вы создаете приложение Node.js Electron, используйте настраиваемый протокол строки вместо обычного веб-ресурса (https://) URI перенаправления для обработки шага перенаправления потока авторизации, например msal{Your_Application/Client_Id}://auth (например , msal00001111-aaaa-2222-bbbb-3333cc444://auth). Не выбирайте очевидное имя пользовательского строкового протокола, которое легко подобрать, а создайте его в рамках рекомендаций спецификации OAuth2.0 для собственных приложений.

  • Если приложение использует только Встроенную проверку подлинности Windows или имя пользователя и пароль, вам не нужно регистрировать URI перенаправления для своего приложения. Эти потоки выполняют круговой путь к конечной точке платформы удостоверений Майкрософт версии 2.0. Обратный вызов приложения через какой-либо конкретный URI не выполняется.

  • Чтобы можно было отличить поток кода устройства, Встроенную проверку подлинности Windows и имя пользователя и пароль от потока учетных данных клиента для конфиденциального клиентского приложения, который используется в управляющих программах, не требующих кода URI перенаправления, настройте его как общедоступное клиентское приложение. Для достижения этой конфигурации они делают следующее.

    1. В Центре администрирования Microsoft Entra выберите приложение в Регистрация приложений и выберите проверку подлинности.

    2. Перейдите в раздел Дополнительные параметры>Разрешить потоки общедоступных клиентов>Включить следующие потоки для мобильных и классических систем и выберите Да.

      Включение параметра общедоступных клиентов в области проверки подлинности на портале Azure

Разрешения API

Классические приложения вызывают интерфейсы API для пользователя, выполнившего вход. Они должны запрашивать делегированные разрешения. Они не могут запрашивать разрешения приложения, которые обрабатываются только в управляющих программах.

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

Перейдите к следующей статье в этом сценарии: Конфигурация кода приложения.