Классическое приложение, вызывающее интерфейсы веб-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 перенаправления, настройте его как общедоступное клиентское приложение. Для достижения этой конфигурации они делают следующее.
Перейдите в раздел Дополнительные параметры>Разрешить потоки общедоступных клиентов>Включить следующие потоки для мобильных и классических систем и выберите Да.
Разрешения API
Классические приложения вызывают интерфейсы API для пользователя, выполнившего вход. Они должны запрашивать делегированные разрешения. Они не могут запрашивать разрешения приложения, которые обрабатываются только в управляющих программах.
Следующие шаги
Перейдите к следующей статье в этом сценарии: Конфигурация кода приложения.