Одностраничное приложение: Регистрация приложения

Чтобы зарегистрировать одностраничное приложение (SPA) на платформе удостоверений Майкрософт, сделайте следующее. Процедура регистрации будет разной для MSAL.js 1.0 с поддержкой неявного потока предоставления разрешений и MSAL.js 2.0 с поддержкой потока кода авторизации с использованием PKCE. Если вы используете MSAL.js 1.0, рекомендуется перейти на MSAL.js 2.0, чтобы воспользоваться преимуществами потока кода авторизации с PKCE, который является более безопасным.

Создание регистрации приложения

Совет

Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.

Для обоих типов приложений (на основе MSAL.js версии  1.0 и 2.0) сначала создается исходная регистрация приложения.

  1. Войдите в центр администрирования Microsoft Entra.
  2. Если у вас есть доступ к нескольким клиентам, используйте значок "Параметры" в верхнем меню, чтобы переключиться на клиент, в котором вы хотите зарегистрировать приложение из меню каталогов и подписок.
  3. Перейдите к приложениям> удостоверений>Регистрация приложений выберите "Создать регистрацию".
  4. Введите значение Name (Имя) для приложения. Пользователи приложения могут видеть это имя. Вы можете изменить его позже.
  5. Выберите поддерживаемые типы учетных записей для приложения. НЕ указывайте URI перенаправления. Описание разных типов учетных записей см. в статье Регистрация приложения.
  6. Щелкните Зарегистрировать, чтобы создать регистрацию приложения.

Теперь присвойте этой регистрации приложения URI перенаправления, чтобы указать, куда платформа удостоверений Майкрософт будет перенаправлять клиенты с любыми маркерами безопасности. Выполните действия с учетом используемой в приложении версии MSAL.js:

Помните, что MSAL.js 2.0+ поддерживает поток кода авторизации с PKCE, который является более безопасным, чем неявный поток предоставления. Если вы используете MSAL.js 1.0, попробуйте перейти на MSAL.js 2.0, чтобы воспользоваться преимуществами потока кода авторизации с PKCE.

URI перенаправления: MSAL.js 2.0 с потоком кода авторизации

Выполните следующие действия, чтобы добавить URI перенаправления для приложения с библиотекой MSAL.js 2.0 или более поздней версии. MSAL.js 2.0+ поддерживает поток кода авторизации с помощью PKCE и общего доступа к ресурсам между источниками (CORS) в ответ на ограничения сторонних файлов cookie в браузере. Неявный поток предоставления не поддерживается в MSAL.js 2.0+.

  1. В Центре администрирования Microsoft Entra выберите регистрацию приложения, созданную в разделе "Создание регистрации приложения".
  2. В разделе Управление выберите Проверка подлинности>Добавить платформу.
  3. В разделе Веб-приложения щелкните плитку Одностраничные приложения.
  4. В поле URI перенаправления введите URI перенаправления. НЕ устанавливайте флажки в разделе Неявное предоставление и гибридные потоки.
  5. Щелкните Настроить, чтобы завершить добавление URI перенаправления.

Теперь spa зарегистрирован в URI перенаправления. Настроив URI перенаправления с помощью плитки одностраничного приложения в области "Добавление платформы ", регистрация приложения поддерживает поток кода авторизации с помощью PKCE и CORS.

URI перенаправления: MSAL.js 1.0 с неявным потоком

Выполните следующие действия, чтобы добавить URI перенаправления для SPA, использующего MSAL.js 1.3 или более ранней версии, и неявный поток предоставления. Приложения, использующие MSAL.js 1.3 или более ранних версий, не поддерживают поток кода авторизации.

  1. В Центре администрирования Microsoft Entra выберите регистрацию приложения, созданную в разделе "Создание регистрации приложения".
  2. В разделе Управление выберите Проверка подлинности>Добавить платформу.
  3. В разделе Веб-приложения щелкните плитку Одностраничные приложения.
  4. В поле URI перенаправления введите URI перенаправления.
  5. Включите неявное предоставление и гибридные потоки:
  6. Щелкните Настроить, чтобы завершить добавление URI перенаправления.

Теперь spa зарегистрирован в URI перенаправления. Выбрав один или оба маркера идентификатора и маркеры доступа, регистрация приложения поддерживает неявный поток предоставления.

Примечание о потоках авторизации

По умолчанию регистрация приложения, созданная с помощью конфигурации платформы SPA, включает поток кода авторизации. Но чтобы использовать этот поток, приложение должно работать с библиотекой MSAL.js 2.0 или более поздней версии.

SpAs, использующие MSAL.js 1.3, ограничены неявным потоком предоставления. В текущих рекомендациях по OAuth 2.0 предлагается использовать для одностраничных приложений поток кода авторизации, а не неявный поток. Наличие маркеров обновления с ограниченным сроком действия также позволяет приложению учитывать современные ограничения браузеров в отношении конфиденциальности файлов cookie, например Safari ITP.

Если все рабочие spAs, представленные регистрацией приложения, используют MSAL.js 2.0 и поток кода авторизации, снимите флажки неявных параметров предоставления на панели проверки подлинности регистрации приложения в Центре администрирования Microsoft Entra. Если вы по-прежнему используете MSAL.js 1.x, оставьте неявный поток включенным (установлен).

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

Настройте код приложения для использования регистрации приложения, созданной в конфигурации кода приложения.