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


Настольное приложение, вызывающее веб-API: регистрация приложения

применяется к: зеленый круг с символом белой флажки. арендаторы рабочей силы Белый круг с серым символом X. внешние клиенты (подробнее)

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

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

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

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

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

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

  • Чтобы использовать встроенную проверку подлинности Windows или имя пользователя и пароль, ваше приложение должно выполнять вход пользователей в систему в вашем собственном домене, например, если вы являетесь линейным разработчиком бизнес-приложений. Кроме того, в организациях 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-3333cccc4444://auth). Не выбирайте очевидное имя строкового протокола, которое легко можно угадать, и следуйте рекомендациям спецификации OAuth2.0 для собственных приложений.

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

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

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

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

      Включить параметр общедоступного клиента на панели аутентификации в портале Azure

Разрешения API

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

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

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