Предоставление доступа к API подготовки для входящего трафика

Введение

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

В зависимости от того, как клиент API проходит проверку подлинности с помощью идентификатора Microsoft Entra, можно выбрать один из двух вариантов конфигурации:

Настройка субъекта-службы

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

  1. Войдите в Центр администрирования Microsoft Entra (https://entra.microsoft.com) по крайней мере с учетными данными входа приложения Администратор istrator.
  2. Перейдите к идентификатору Microsoft Entra ->Applications ->Регистрация приложений.
  3. Щелкните параметр "Создать регистрацию".
  4. Укажите имя приложения, выберите параметры по умолчанию и нажмите кнопку "Зарегистрировать". Screenshot of app registration.
  5. Скопируйте значения идентификатора приложения (клиента) и идентификатора каталога (клиента) из колонки "Обзор" и сохраните его для последующего использования в клиенте API. Screenshot of app client ID.
  6. В контекстном меню приложения выберите параметр "Сертификаты и секреты ".
  7. Создайте секрет клиента. Укажите описание секрета и даты окончания срока действия.
  8. Скопируйте созданное значение секрета клиента и сохраните его для последующего использования в клиенте API.
  9. В разрешениях API контекстного меню выберите параметр "Добавить разрешение".
  10. В разделе "Разрешения API запроса" выберите Microsoft Graph.
  11. Выберите Разрешения приложения.
  12. Поиск и выбор разрешения AuditLog.Read.All и SynchronizationData-User.Upload.
  13. Щелкните "Предоставить согласие администратора" на следующем экране, чтобы завершить назначение разрешений. Нажмите кнопку "Да" в диалоговом окне подтверждения. Приложение должно иметь следующие наборы разрешений. Screenshot of app permissions.
  14. Теперь вы готовы использовать субъект-службу с клиентом API.
  15. Для рабочих нагрузок рекомендуется использовать проверку подлинности на основе сертификатов клиента с субъектом-службой или управляемыми удостоверениями.

Настройка управляемого удостоверения

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

  1. Настройте управляемое удостоверение для использования с ресурсом Azure.

  2. Скопируйте имя управляемого удостоверения из Центра администрирования Microsoft Entra. Например, на снимке экрана ниже показано имя назначаемого системой управляемого удостоверения, связанного с рабочим процессом Azure Logic Apps с именем CSV2SCI МБ ulkUpload.

    Screenshot of managed identity name.

  3. Выполните следующий скрипт PowerShell, чтобы назначить разрешения управляемому удостоверению.

    Install-Module Microsoft.Graph -Scope CurrentUser
    
    Connect-MgGraph -Scopes "Application.Read.All","AppRoleAssignment.ReadWrite.All,RoleManagement.ReadWrite.Directory"
    Select-MgProfile Beta
    $graphApp = Get-MgServicePrincipal -Filter "AppId eq '00000003-0000-0000-c000-000000000000'"
    
    $PermissionName = "SynchronizationData-User.Upload"
    $AppRole = $graphApp.AppRoles | `
    Where-Object {$_.Value -eq $PermissionName -and $_.AllowedMemberTypes -contains "Application"}
    $managedID = Get-MgServicePrincipal -Filter "DisplayName eq 'CSV2SCIMBulkUpload'"
    New-MgServicePrincipalAppRoleAssignment -PrincipalId $managedID.Id -ServicePrincipalId $managedID.Id -ResourceId $graphApp.Id -AppRoleId $AppRole.Id
    
    $PermissionName = "AuditLog.Read.All"
    $AppRole = $graphApp.AppRoles | `
    Where-Object {$_.Value -eq $PermissionName -and $_.AllowedMemberTypes -contains "Application"}
    $managedID = Get-MgServicePrincipal -Filter "DisplayName eq 'CSV2SCIMBulkUpload'"
    New-MgServicePrincipalAppRoleAssignment -PrincipalId $managedID.Id -ServicePrincipalId $managedID.Id -ResourceId $graphApp.Id -AppRoleId $AppRole.Id
    
  4. Чтобы убедиться, что разрешение было применено, найдите субъект-службу управляемого удостоверения в разделе "Корпоративные приложения " в идентификаторе Microsoft Entra ID. Удалите фильтр типа приложения, чтобы просмотреть все субъекты-службы. Screenshot of managed identity principal.

  5. Щелкните колонку "Разрешения" в разделе "Безопасность". Убедитесь, что задано разрешение. Screenshot of managed identity permissions.

  6. Теперь вы готовы использовать управляемое удостоверение с клиентом API.

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