Conceder acesso à API de provisionamento de entrada

Introdução

Depois de configurar o aplicativo de provisionamento de entrada controlado por API, você precisa conceder permissões de acesso para que os clientes da API possam enviar solicitações para a API de provisionamento /bulkUpload e consultar a API de logs de provisionamento. Este tutorial orienta você pelas etapas para configurar essas permissões.

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

Configurar um principal de serviço

Essa configuração registra um aplicativo no Microsoft Entra ID que representa o cliente de API externo e concede permissão para invocar a API de provisionamento de entrada. O 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. Inicie sessão no Centro de administração do Microsoft Entra (https://entra.microsoft.com) com, pelo menos , as credenciais de início de sessão do Administrador de Aplicações .
  2. Navegue até Microsoft Entra ID ->Applications ->App registrations.
  3. Clique na opção Novo registo.
  4. Forneça um nome de aplicativo, selecione as opções padrão e clique em Registrar. Captura de ecrã do registo da aplicação.
  5. Copie os valores de ID do aplicativo (cliente) e ID do diretório (locatário) da folha Visão geral e salve-o para uso posterior em seu cliente de API. Captura de ecrã do ID do cliente da aplicação.
  6. No menu de contexto do aplicativo, selecione a opção Certificados & segredos .
  7. Crie um novo segredo do cliente. Forneça uma descrição do segredo e da data de validade.
  8. Copie o valor gerado do segredo do cliente e salve-o para uso posterior em 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 de API, selecione Microsoft Graph.
  11. Selecione Permissões de aplicação.
  12. Pesquise e selecione a permissão AuditLog.Read.All e SynchronizationData-User.Upload.
  13. Clique em Conceder consentimento de administrador na próxima tela para concluir a atribuição de permissão. Clique em Sim na caixa de diálogo de confirmação. Seu aplicativo deve ter os seguintes conjuntos de permissões. Captura de ecrã das permissões da aplicação.
  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 o uso da autenticação baseada em certificado de cliente com a entidade de serviço ou identidades gerenciadas.

Configurar uma identidade gerida

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 sua 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 ao sistema associada a um fluxo de trabalho dos Aplicativos Lógicos do Azure chamado "CSV2SCIMBulkUpload".

    Captura de ecrã do nome da identidade gerida.

  3. Execute o seguinte script do PowerShell 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 que a permissão foi aplicada, localize a entidade de serviço de identidade gerenciada em Aplicativos Empresariais no Microsoft Entra ID. Remova o filtro Tipo de aplicativo para ver todas as entidades de serviço. Captura de tela da entidade de identidade gerenciada.

  5. Clique na folha Permissões em Segurança. Verifique se a permissão está definida. Captura de ecrã de permissões de identidade geridas.

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

Próximos passos