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: siga essas instruções se o seu cliente de API planejar usar uma entidade de serviço de um aplicativo registrado no Microsoft Entra e autenticar usando o fluxo de concessão de credenciais do cliente OAuth.
- Configurar uma identidade gerenciada: siga essas instruções se o cliente de API planejar usar uma identidade gerenciada do Microsoft Entra.
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.
- 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.
- Navegue até Microsoft Entra ID –>Aplicativos –>Registros de aplicativo.
- Clique na opção Novo registro.
- Forneça um nome de aplicativo, selecione as opções padrão e clique em Registrar.
- 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.
- No menu de contexto do aplicativo, selecione a opção Certificados e segredos.
- Crie um novo segredo do cliente. Forneça uma descrição para o segredo e a data de expiração.
- Copie o valor do segredo do cliente gerado e salve-o para uso posterior no seu cliente de API.
- No menu de contexto Permissões da API, selecione a opção Adicionar uma permissão.
- Em Solicitar permissões da API, selecione Microsoft Graph.
- Selecione Permissões de aplicativo.
- Pesquise e selecione a permissão AuditLog.Read.All e SynchronizationData-User.Upload.
- 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.
- Agora você está pronto para usar a entidade de serviço com seu cliente de API.
- 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.
Configure uma identidade gerenciada para uso com seu recurso do Azure.
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".
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
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.
Clique na folha Permissões em Segurança. Certifique-se de que a permissão esteja configurada.
Agora você está pronto para usar a identidade gerenciada com seu cliente de API.