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

Microsoft Graph позволяет управлять множеством ресурсов в арендаторе Azure AD B2C, включая учетные записи пользователей клиентов и пользовательские политики. Создавая скрипты или приложения, вызывающие API Microsoft Graph, вы можете автоматизировать следующие задачи управления арендатором:

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

Следующие разделы помогут вам подготовиться к использованию API Microsoft Graph для автоматизации управления ресурсами в каталоге Azure AD B2C.

Режимы взаимодействия API Microsoft Graph

Существует два режима взаимодействия, которые можно использовать при работе с API Microsoft Graph для управления ресурсами в арендаторе Azure AD B2C:

  • Интерактивный: хорошо подходит для однократного выполнения задач с использованием учетной записи администратора в арендаторе B2C. В этом режиме администратору нужно выполнить вход с использованием учетных данных, прежде чем вызывать API Microsoft Graph.

  • Автоматический: для задач, выполняемых по расписанию или непрерывно. Этот метод использует учетную запись службы, для которой настроены требуемые для выполнения задач управления разрешения. Чтобы создать "учетную запись службы" в Azure AD B2C, нужно зарегистрировать приложение, которое затем будет использоваться клиентскими приложениями и скриптами для аутентификации с использованием идентификатора приложения (клиента) и учетных данных клиента OAuth 2.0. В этом случае вызов API Microsoft Graph выполняет само приложение, а не пользователь с правами администратора, как в описанном выше интерактивном методе.

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

Служба проверки подлинности Azure AD B2C напрямую поддерживает поток предоставления учетных данных клиента OAuth 2.0 (в настоящее время предлагается в общедоступной предварительной версии), но его нельзя использовать для управления ресурсами Azure AD B2C через Microsoft API Graph. Однако вы можете настроить поток учетных данных клиента с помощью идентификатора Microsoft Entra и конечной точки платформа удостоверений Майкрософт /token для приложения в клиенте Azure AD B2C.

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

Прежде чем скрипты и приложения смогут управлять ресурсами Azure AD B2C через API Microsoft Graph, необходимо создать регистрацию приложения в арендаторе Azure AD B2C, который предоставляет необходимые разрешения API.

  1. Войдите на портал Azure.
  2. Если у вас есть доступ к нескольким клиентам, выберите значок Параметры в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню каталогов и подписок.
  3. В портале Azure найдите и выберите Azure AD B2C.
  4. Щелкните Регистрация приложений и выберите Новая регистрация.
  5. Введите имя приложения. Например, managementapp1.
  6. Установите флажок Учетные записи только в этом каталоге организации.
  7. В разделе Разрешения снимите флажок Предоставить согласие администратора для разрешений openid и offline_access.
  8. Выберите Регистр.
  9. Запишите значение Идентификатор приложения (клиента), которое отображается на странице обзора приложения. Вы будете использовать это значение на более позднем шаге.

Предоставление доступа через API

Чтобы приложение получило доступ к данным в Microsoft Graph, предоставьте зарегистрированному приложению нужные разрешения приложения. Действующие разрешения для приложения включают полный уровень привилегий, подразумеваемых разрешением. Например, разрешение User.ReadWrite.All позволяет создавать, считывать, обновлять или удалять всех пользователей в арендаторе Azure AD B2C.

Примечание.

Разрешение User.ReadWrite.All не включает возможность обновления паролей для учетных записей пользователей. Если приложению необходимо обновить пароли учетных записей пользователей, предоставьте ему роль администратора пользователей. При наличии роли администратора пользователей разрешение User.ReadWrite.All уже не требуется. Роль администратора пользователей включает все необходимое для управления пользователями.

Вы можете предоставить приложению несколько разрешений приложения. Например, если приложению нужно управлять группами в арендаторе Azure AD B2C, добавьте также разрешение Group.ReadWrite.ALL.

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

  1. В разделе Управление выберите Разрешения API.
  2. В разделе Настроенные разрешения выберите Добавить разрешение.
  3. Перейдите на вкладку API Майкрософт и выберите Microsoft Graph.
  4. Выберите Разрешения приложения.
  5. Разверните соответствующую группу разрешений и установите флажок для разрешения, которое будет предоставлено приложению управления. Например:
    • Пользователь>User.ReadWrite.All: для сценариев миграции пользователей или управления пользователями.
    • Группа>Group.ReadWrite.All: для создания групп, чтения и обновления членства в группах, а также для удаления групп.
    • AuditLog>AuditLog.Read.All: для чтения журналов аудита в каталоге.
    • Политика>Policy.ReadWrite.TrustFramework: для сценариев непрерывной интеграции/непрерывной поставки (CI/CD). Например, пользовательское развертывание политики с помощью Azure Pipelines.
  6. Выберите Добавить разрешения. В соответствии с инструкциями подождите несколько минут, прежде чем перейти к следующему шагу.
  7. Выберите Предоставить согласие администратора для (имя арендатора).
  8. Войдите с учетной записью в клиенте Azure AD B2C с ролью облачного приложения Администратор istrator, а затем выберите "Предоставить согласие администратора" (имя клиента).
  9. Выберите "Обновить", а затем убедитесь, что "Предоставлено для ..." отображается в разделе "Состояние". Распространение разрешений может занять несколько минут.

[Необязательно] Предоставление роли администратора пользователей

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

Чтобы добавить роль администратора пользователей, выполните следующие действия:

  1. Войдите на портал Azure.
  2. Если у вас есть доступ к нескольким клиентам, выберите значок Параметры в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню каталогов и подписок.
  3. Найдите и выберите Azure AD B2C.
  4. В разделе Управление выберите Роли и администраторы.
  5. Выберите роль Администратор пользователей.
  6. Щелкните Добавить назначения.
  7. В текстовом поле Выбор введите имя или идентификатор зарегистрированного ранее приложения, например managementapp1. Когда оно появится в результатах поиска, выберите нужное приложение.
  8. Выберите Добавить. Полное распространение разрешений может занять несколько минут.

Создание секрета клиента

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

  1. В разделе Управление выберите Сертификаты и секреты.
  2. Щелкните Создать секрет клиента.
  3. Введите описание секрета клиента в поле Описание. Например, clientsecret1.
  4. В разделе Истекает выберите срок действия секрета, а затем выберите Добавить.
  5. Запишите значение секрета в поле Значение. Это значение будет использовано позже для настройки.

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

Итак, вы зарегистрировали приложение управления и предоставили ему необходимые разрешения, и теперь ваши приложения и службы (например, Azure Pipelines) смогут использовать свои учетные данные и разрешения для взаимодействия с API Microsoft Graph.