Concedere l'accesso all'API di provisioning in ingresso

Introduzione

Dopo aver configurato l'app di provisioning in ingresso basato su API, è necessario concedere le autorizzazioni di accesso per consentire ai client API di inviare richieste all'API di provisioning /bulkUpload ed eseguire query sull'API dei log di provisioning. Questa esercitazione illustra i passaggi per configurare tali autorizzazioni.

A seconda della modalità di autenticazione del client API con Microsoft Entra ID, è possibile scegliere tra due opzioni di configurazione:

Configurare un'entità servizio

Questa configurazione registra in Microsoft Entra ID un'app che rappresenta il client API esterno e concede a tale app l'autorizzazione per richiamare l'API di provisioning in ingresso. Nel flusso di concessione delle credenziali client OAuth è possibile usare l'ID client e il segreto client dell'entità servizio.

  1. Accedere all'Interfaccia di amministrazione di Microsoft Entra (https://entra.microsoft.com) con le credenziali di accesso almeno di amministratore applicazione.
  2. Passare a Microsoft Entra ID ->Applicazioni ->Registrazioni app.
  3. Fare clic sull'opzione Nuova registrazione.
  4. Specificare il nome dell'app, selezionare le opzioni predefinite e fare clic su Registra. Screenshot della registrazione dell'app.
  5. Copiare i valori ID applicazione (client) e ID directory (tenant) dal riquadro Panoramica e salvarlo per usarlo in un secondo momento nel client API. Screenshot dell'ID client dell'app.
  6. Nel menu di scelta rapida dell'app selezionare l'opzione Certificati e segreti.
  7. Creare un nuovo segreto client. Specificare una descrizione per la data di scadenza e il segreto.
  8. Copiare il valore generato del segreto client e salvarlo per usarlo in un secondo momento nel client API.
  9. Nel menu di scelta rapida Autorizzazioni APIselezionare l'opzione Aggiungi un'autorizzazione.
  10. In Richiedi le autorizzazioni dell'API selezionare Microsoft Graph.
  11. Seleziona Autorizzazioni applicazione.
  12. Cercare e selezionare le autorizzazioni AuditLog.Read.All e SynchronizationData-User.Upload.
  13. Fare clic su Fornisci il consenso amministratore nella schermata successiva per completare l'assegnazione delle autorizzazioni. Fare clic su Sì nella finestra di dialogo di conferma. L'app dovrebbe avere i set di autorizzazioni seguenti. Screenshot delle autorizzazioni dell'app.
  14. È ora possibile usare l'entità servizio con il client API.
  15. Per i carichi di lavoro di produzione, è consigliabile usare l'autenticazione basata su certificati client con l'entità servizio o le identità gestite.

Configurare un'identità gestita

Questa sezione descrive come assegnare le autorizzazioni necessarie a un'identità gestita.

  1. Configurare un'identità gestita da usare con la risorsa di Azure.

  2. Copiare il nome dell'identità gestita dall'Interfaccia di amministrazione di Microsoft Entra. Ad esempio, lo screenshot seguente mostra il nome di un'identità gestita assegnata dal sistema associata a un flusso di lavoro di App per la logica di Azure denominato "CSV2SCIMBulkUpload".

    Screenshot del nome dell'identità gestita.

  3. Eseguire lo script di PowerShell seguente per assegnare le autorizzazioni all'identità gestita.

    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. Per verificare che l'autorizzazione sia stata applicata, trovare l'entità servizio dell'identità gestita nella sezione Applicazioni aziendali in Microsoft Entra ID. Rimuovere il filtro Tipo di applicazione per visualizzare tutte le entità servizio. Screenshot dell'entità identità gestita.

  5. Fare clic sul riquadro Autorizzazioni in Sicurezza. Verificare che l'autorizzazione sia impostata. Screenshot delle autorizzazioni dell'identità gestita.

  6. È ora possibile usare l'identità gestita con il client API.

Passaggi successivi