Compartilhar via


Conceder acesso à API de provisionamento de entrada

Introdução

Após ter configurado o aplicativo de provisionamento de entrada orientado por API, você precisará conceder permissões de acesso para que os clientes de API possam enviar solicitações para o /bulkUpload da API de provisionamento e consultar a API de logs de provisionamento. Este tutorial explica as etapas para configurar essas permissões.

Dependendo de como o cliente de API autentica com o Microsoft Entra ID, você pode selecionar uma de duas opções de configuração:

Configurar uma entidade de serviço

Essa configuração registra um aplicativo no Microsoft Entra ID que representa o cliente de API externo e concede a ele permissão para invocar a API de provisionamento de entrada. A ID do cliente da entidade de serviço e o segredo do cliente podem ser usados no fluxo de concessão de credenciais do cliente OAuth.

  1. Faça logon no Centro de administração do Microsoft Entra (https://entra.microsoft.com) com pelo menos as credenciais de logon do Administrador de Aplicativos.
  2. Navegue até Microsoft Entra ID –>Aplicativos –>Registros de aplicativo.
  3. Clique na opção Novo registro.
  4. Forneça um nome de aplicativo, selecione as opções padrão e clique em Registrar. Screenshot of app registration.
  5. Copie os valores ID do aplicativo (cliente) e ID do diretório (locatário) da folha Visão Geral e salve-os para uso posterior no seu cliente de API. Screenshot of app client ID.
  6. No menu de contexto do aplicativo, selecione a opção Certificados e segredos.
  7. Crie um novo segredo do cliente. Forneça uma descrição para o segredo e a data de expiração.
  8. Copie o valor do segredo do cliente gerado e salve-o para uso posterior no seu cliente de API.
  9. No menu de contexto Permissões da API, selecione a opção Adicionar uma permissão.
  10. Em Solicitar permissões da API, selecione Microsoft Graph.
  11. Selecione Permissões de aplicativo.
  12. Pesquise e selecione a permissão AuditLog.Read.All e SynchronizationData-User.Upload.
  13. Clique em Conceder consentimento do administrador na tela seguinte para concluir a atribuição da permissão. Clique em Sim no diálogo de confirmação. Seu aplicativo deve ter os conjuntos de permissões a seguir. Screenshot of app permissions.
  14. Agora você está pronto para usar a entidade de serviço com seu cliente de API.
  15. Para cargas de trabalho de produção, recomendamos usar a autenticação baseada em certificado do cliente com a entidade de serviço ou identidades gerenciadas.

Configurar uma identidade gerenciada

Esta seção descreve como você pode atribuir as permissões necessárias a uma identidade gerenciada.

  1. Configure uma identidade gerenciada para uso com seu recurso do Azure.

  2. Copie o nome da identidade gerenciada do centro de administração do Microsoft Entra. Por exemplo: a captura de tela abaixo mostra o nome de uma identidade gerenciada atribuída pelo sistema associada a um fluxo de trabalho de Aplicativos Lógicos do Azure chamado "CSV2SCIMBulkUpload".

    Screenshot of managed identity name.

  3. Execute o script do PowerShell a seguir para atribuir permissões à sua identidade gerenciada.

    Install-Module Microsoft.Graph -Scope CurrentUser
    
    Connect-MgGraph -Scopes "Application.Read.All","AppRoleAssignment.ReadWrite.All,RoleManagement.ReadWrite.Directory"
    $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. Para confirmar se a permissão foi aplicada, localize a entidade de serviço da identidade gerenciada em Aplicativos Empresariais no Microsoft Entra ID. Remova o filtro Tipo de aplicativo para ver todas as entidades de serviço. Screenshot of managed identity principal.

  5. Clique na folha Permissões em Segurança. Certifique-se de que a permissão esteja configurada. Screenshot of managed identity permissions.

  6. Agora você está pronto para usar a identidade gerenciada com seu cliente de API.

Próximas etapas