Модель приложения

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

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

Чтобы поставщик удостоверений знал, что пользователь имеет доступ к конкретному приложению, пользователь и приложение должны быть в нем зарегистрированы. При регистрации приложения с помощью идентификатора Microsoft Entra вы предоставляете конфигурацию удостоверения для приложения, которая позволяет интегрировать его с платформа удостоверений Майкрософт. Регистрация приложения также предоставляет следующие возможности.

  • Настройка фирменной символики приложения в диалоговом окне входа. Эта фирменная символика важна, поскольку страница входа в систему — это первое, что видит пользователь при взаимодействии с приложением.
  • Решите, следует ли разрешить вход только пользователям, которые принадлежат к вашей организации. Такая архитектура называется приложением с одним клиентом. Кроме того, можно разрешить пользователям выполнять вход с помощью любой рабочей или учебной учетной записи. В этом случае у приложения будет несколько клиентов. Вы также можете разрешить использование личной учетной записи Майкрософт или учетной записи социальных сетей LinkedIn, Google и т. п.
  • Запрос разрешений области. Например, можно запрашивать область user.read, которая предоставляет разрешение на чтение профиля пользователя, выполнившего вход.
  • Определение областей, определяющих доступ к веб-API. Как правило, когда приложению требуется доступ к API, ему необходимо запросить разрешения для определенных областей.
  • Предоставление доступа к своему секрету платформе удостоверений Майкрософт для подтверждения подлинности приложения. Использование секрета уместно, если приложение является конфиденциальным клиентским приложением. Конфиденциальное клиентское приложение — это приложение , которое может безопасно хранить учетные данные, например веб-клиент. Для хранения учетных данных требуется доверенный внутренний сервер.

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

Платформа удостоверений Майкрософт представляет приложения с помощью модели, выполняющей две основные функции:

  • идентификация приложения по протоколам проверки подлинности, которые оно поддерживает;
  • предоставление всех идентификаторов, URL-адресов, секретов и связанных сведений, необходимых для проверки подлинности.

Платформа удостоверений Майкрософт:

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

Согласие — это процесс предоставления владельцем ресурса клиентскому приложению доступа к ресурсам, защищенным конкретными разрешениями, от своего имени. Платформы удостоверений Майкрософт позволяют:

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

Мультитенантные приложения

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

На следующей схеме показан упрощенный процесс подготовки платформы удостоверений Майкрософт на основе согласия. На ней показаны два клиента: A и B.

  • Клиент A является владельцем приложения.
  • Клиент B создает экземпляр приложения с помощью субъекта-службы.

Diagram that shows a simplified provisioning flow driven by consent.

В этом процессе подготовки:

  1. Пользователь клиента B пытается выполнить вход в приложение. Конечная точка авторизации запрашивает маркер для приложения.
  2. Для поверки подлинности принимаются и проверяются учетные данные пользователя.
  3. Пользователю предлагается предоставить согласие для приложения на получение доступа к клиенту B.
  4. Платформа удостоверений Майкрософт использует объект приложения в клиенте A в качестве схемы для создания субъекта-службы в клиенте B.
  5. Пользователь получает запрошенный маркер безопасности.

Этот процесс можно повторить для большего числа клиентов. Клиент A сохраняет схему для приложения (объект приложения). Пользователи и администраторы всех остальных клиентов, где приложение получает согласие, сохраняют контроль над тем, что приложению разрешено делать, с помощью соответствующего объекта субъекта-службы в каждом клиенте. Дополнительные сведения см. в статье Объекты приложения и субъекта-службы на платформе удостоверений Майкрософт.

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

Дополнительные сведения о проверке подлинности и авторизации на платформе удостоверений Майкрософт см. в следующих статьях:

Дополнительные сведения о модели приложения см. в следующих статьях:

  • Дополнительные сведения об объектах приложений и субъектах-службах в платформа удостоверений Майкрософт см. в статье "Как и почему приложения добавляются в идентификатор Microsoft Entra".
  • Дополнительные сведения о приложениях с одним клиентом и мультитенантных приложениях см. в разделе "Арендаторство" в идентификаторе Microsoft Entra.
  • Дополнительные сведения о том, как идентификатор Microsoft Entra также предоставляет Azure Active Directory B2C, чтобы организации могли выполнять вход пользователей, как правило, с помощью удостоверений социальных удостоверений, таких как учетная запись Google, см . в документации по Azure Active Directory B2C.