Регистрация приложения в внешнем клиенте

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

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

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

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

Из этой статьи вы узнаете, как зарегистрировать приложение во внешнем клиенте.

Необходимые компоненты

Выбор типа приложения

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

Внешний идентификатор поддерживает проверку подлинности для одностраничных приложений (SPA).

Ниже показано, как зарегистрировать SPA в Центре администрирования Microsoft Entra:

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

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

  3. Перейдите к приложениям> удостоверений>Регистрация приложений.

  4. Выберите + Создать регистрацию.

  5. Откроется страница "Регистрация приложения", где необходимо ввести сведения о регистрации приложения:

    1. В разделе "Имя" введите понятное имя приложения, отображаемое пользователям приложения, например ciam-client-app.

    2. В разделе Поддерживаемые типы учетных записей выберите Учетные записи только в этом каталоге организации.

    3. В разделе URI перенаправления (необязательно) выберите одностраничные приложения (SPA), а затем в поле URL-адреса введите http://localhost:3000/.

  6. Выберите Зарегистрировать.

  7. Панель обзора приложения отображается при завершении регистрации. Запишите идентификатор каталога (клиента) и идентификатор приложения (клиента), которые будут использоваться в исходном коде приложения.

Сведения о URI перенаправления

URI перенаправления — это конечная точка, в которой пользователь отправляется серверу авторизации (в данном случае идентификатор Microsoft Entra ID) после завершения взаимодействия с пользователем и которому отправляется маркер доступа или код авторизации при успешной авторизации.

В рабочем приложении обычно это общедоступная конечная точка, в которой работает приложение, например https://contoso.com/auth-response.

Во время разработки приложений можно добавить конечную точку, в которой приложение прослушивает локально, например http://localhost:3000. URI перенаправления в зарегистрированных приложениях можно добавлять и изменять в любое время.

На URI перенаправления налагаются следующие ограничения.

  • URL-адрес ответа должен начинаться со схемы https, если вы не используете URL-адрес перенаправления localhost.

  • В URL-адресе ответа учитывается регистр. Его регистр должен соответствовать регистру URL-пути выполняющегося приложения. Например, если приложение включает в состав своего пути .../abc/response-oidc, не указывайте .../ABC/response-oidc в URL-адресе ответа. Так как веб-браузер обрабатывает пути с учетом регистра, файлы cookie, связанные с .../abc/response-oidc, могут быть исключены при перенаправлении на не совпадающий по регистру знаков URL-адрес .../ABC/response-oidc.

  • URL-адрес ответа может включать или не включать наклонную черту в конце в зависимости от того, ожидает ли ее приложение. Например, https://contoso.com/auth-response и https://contoso.com/auth-response/ может рассматриваться как несоединяемые URL-адреса в приложении.

После регистрации приложения он получает разрешение User.Read . Однако, поскольку клиент является внешним клиентом, сами пользователи клиента не могут согласиться с этим разрешением. Вы, как администратор, должны предоставить это разрешение от имени всех пользователей в клиенте:

  1. На странице Регистрация приложений выберите созданное приложение (например, ciam-client-app), чтобы открыть страницу обзора.

  2. В разделе Управление выберите Разрешения API.

    1. Выберите "Предоставить согласие администратора" для <имени> клиента, а затем нажмите кнопку "Да".
    2. Выберите "Обновить", а затем убедитесь, что <имя> клиента предоставлено в разделе "Состояние" для разрешения.

Предоставление разрешений API (необязательно):

Если spa должен вызвать API, необходимо предоставить разрешения API SPA, чтобы он смог вызвать API. Кроме того , необходимо зарегистрировать веб-API , который необходимо вызвать.

Чтобы предоставить клиентским приложениям (ciam-client-app) разрешения API, выполните следующие действия:

  1. На странице Регистрация приложений выберите созданное приложение (например, ciam-client-app), чтобы открыть страницу обзора.

  2. В разделе Управление выберите Разрешения API.

  3. В разделе Настроенные разрешения выберите Добавить разрешение.

  4. Щелкните вкладку API, используемые моей организацией.

  5. В списке API выберите API, например ciam-ToDoList-api.

  6. Выберите параметр "Делегированные разрешения".

  7. В списке разрешений выберите ToDoList.Read, ToDoList.ReadWrite (при необходимости используйте поле поиска).

  8. Нажмите кнопку Add permissions (Добавить разрешения). На этом этапе вы правильно назначили разрешения. Тем не менее, поскольку клиент является клиентом клиента, пользователи-потребители сами не могут согласиться с этими разрешениями. Чтобы устранить эту проблему, администратор должен согласиться с этими разрешениями от имени всех пользователей в клиенте:

    1. Выберите "Предоставить согласие администратора" для <имени> клиента, а затем нажмите кнопку "Да".

    2. Выберите "Обновить", а затем убедитесь, что имя> клиента предоставлено <в разделе "Состояние" для обеих областей.

  9. В списке настроенных разрешений выберите разрешения ToDoList.Read и ToDoList.ReadWrite по одному за раз, а затем скопируйте полный универсальный код ресурса (URI) разрешения для последующего использования. Полный универсальный код ресурса (URI) разрешений выглядит примерно так же api://{clientId}/{ToDoList.Read} api://{clientId}/{ToDoList.ReadWrite}или.

Если вы хотите узнать, как предоставить разрешения, добавив ссылку, перейдите в раздел веб-API .

Тестирование потока пользователя (необязательно)

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

Внимание

Неявный поток следует использовать только для тестирования, а не для проверки подлинности пользователей в рабочих приложениях. После завершения тестирования рекомендуется удалить его.

Чтобы включить неявный поток, выполните следующие действия.

  1. Войдите в Центр администрирования Microsoft Entra как минимум разработчик приложений.
  2. Если у вас есть доступ к нескольким клиентам, используйте значок параметров в верхнем меню, чтобы переключиться на внешний клиент из меню каталогов и подписок.
  3. Перейдите к приложениям> удостоверений>Регистрация приложений.
  4. Выберите созданную регистрацию приложения.
  5. В разделе Управление выберите Проверка подлинности.
  6. В разделе Неявное предоставление разрешения и гибридные потоки установите флажок Токены ИД (используются для неявных и гибридных потоков).
  7. Выберите Сохранить.

Поиск идентификатора приложения (клиента)

После регистрации нового приложения вы можете найти идентификатор приложения (клиента) в обзоре в Центре администрирования Microsoft Entra.

  1. На странице Регистрация приложений выберите вкладку "Все приложения" или вкладку "Принадлежащие приложения".

  2. Выберите приложение, чтобы открыть страницу обзора .

  3. В разделе Essentials вы найдете все сведения о приложении, включая идентификатор приложения (клиента).

    Снимок экрана: идентификатор приложения (клиента).

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