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