Guida di avvio rapido del provisioning in ingresso basato su API con Graph Explorer

Questa esercitazione descrive come testare rapidamente il provisioning in ingresso basato su API con Microsoft Graph Explorer.

Prerequisiti

Nota

Questa API di provisioning è destinata principalmente all'uso in un'applicazione o un servizio. Gli amministratori tenant possono configurare un'entità servizio o un'identità gestita per concedere l'autorizzazione per il caricamento. Non esiste un ruolo della directory predefinito di Microsoft Entra separato per questa API. Ad esclusione delle applicazioni che hanno acquisito l'autorizzazione SynchronizationData-User.Upload con il consenso amministratore, solo gli utenti amministratori con ruolo di amministratore globale possono richiamare l'API. Questa esercitazione illustra come testare l'API con un ruolo di amministratore globale nella configurazione di test.

Caricare i dati utente nell'API di provisioning in ingresso

  1. Aprire una nuova scheda o finestra del browser.

  2. Avviare l'URL https://aka.ms/ge per accedere a Microsoft Graph Explorer.

  3. Fare clic sull'icona del profilo utente per accedere.

    Immagine che mostra l'icona del profilo utente.

  4. Completare il processo di accesso con un account utente con il ruolo di amministratore globale.

  5. Dopo aver eseguito l'accesso, il nome del tenant è visualizzato in Informazioni sul tenant.

    Screenshot del nome del tenant.

    È ora possibile richiamare l'API.

  6. Nel pannello della richiesta API, impostare il tipo di richiesta HTTP su POST.

  7. Copiare e incollare l'endpoint API di provisioning recuperato dalla pagina di panoramica dell'app di provisioning.

  8. Nel pannello Intestazioni della richiesta, aggiungere una nuova coppia chiave-valore Content-Type = application/scim+json. Screenshot del pannello Intestazioni della richiesta.

  9. Nel pannello Corpo della richiesta, copiare e incollare la richiesta in blocco bulk con lo schema utente aziendale SCIM.

  10. Fare clic sul pulsante Esegui query per inviare la richiesta all'endpoint API di provisioning.

  11. Se la richiesta viene inviata correttamente, si otterrà una risposta Accepted 202 dall'endpoint API.

  12. Aprire il pannello Intestazioni della risposta e copiare il valore di URL dell'attributo del percorso. Questo rimanda all'endpoint API dei log di provisioning su cui è possibile eseguire una query per controllare lo stato di provisioning degli utenti presenti nella richiesta in blocco.

Verificare l'elaborazione del payload della richiesta in blocco

È possibile verificare l'elaborazione dall'interfaccia di amministrazione di Microsoft Entra o tramite Graph explorer.

Verificare l'elaborazione dall'interfaccia di amministrazione di Microsoft Entra

  1. Accedere all'interfaccia di amministrazione di Microsoft Entra con le credenziali di accesso almeno di amministratore applicazione.

  2. Passare a Microsoft Entra ID -> Applicazioni -> Applicazioni aziendali.

  3. In tutte le applicazioni, usare la casella di testo del filtro di ricerca per trovare l'applicazione di provisioning basato su API e aprirla.

  4. Aprire il riquadro Provisioning. Nella pagina di destinazione viene visualizzato lo stato dell'ultima esecuzione.

  5. Fare clic su Visualizza i log di provisioning per aprire il riquadro dei log di provisioning. In alternativa, è possibile fare clic sull'opzione di menu Monitoraggio -> Log di provisioning.

    Screenshot di Log di provisioning nel menu.

  6. Fare clic su qualsiasi record nei log di provisioning per visualizzare altri dettagli di elaborazione.

  7. Nella schermata dei dettagli del log di provisioning vengono visualizzati tutti i passaggi eseguiti per un utente specifico.

    • Nel passaggio Importa da API, vedere i dettagli dei dati utente estratti dalla richiesta in blocco.
    • Nel passaggio Corrispondenza utente vengono visualizzati i dettagli di qualsiasi corrispondenza utente in base all'identificatore corrispondente. Se viene trovata una corrispondenza utente, il servizio di provisioning esegue un'operazione di aggiornamento. Se non esiste alcuna corrispondenza utente, il servizio di provisioning esegue un'operazione di creazione.
    • Nel passaggio Determina se l'utente rientra nell'ambito vengono visualizzati i dettagli della valutazione dei filtri di ambito. Per impostazione predefinita, vengono elaborati tutti gli utenti. Se è stato impostato un filtro di ambito, ad esempio per elaborare solo gli utenti appartenenti al reparto vendite, i dettagli di valutazione del filtro vengono visualizzati in questo passaggio.
    • Nel passaggio Effettua provisioning utenti viene richiamato il passaggio di elaborazione finale e le modifiche vengono applicate all'account utente.
    • Usare la scheda Proprietà modificate per visualizzare gli aggiornamenti degli attributi.

Verificare l'elaborazione con l'API dei log di provisioning in Graph Explorer

Per esaminare l'elaborazione, usare l'URL dell'API dei log di provisioning restituito nell'intestazione della risposta del percorso nella chiamata all'API di provisioning.

  1. Nella casella di testo URL richiesta di Graph Explorer, copiare l'URL del percorso restituito dall'endpoint API di provisioning oppure crearlo in formato https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId>', in cui è possibile recuperare il valore di jobId dalla pagina di panoramica dell'app di provisioning.
  2. Usare il metodo GET e fare clic su Esegui query per recuperare i log di provisioning. Per impostazione predefinita, la risposta restituita contiene tutti i record dei log.
  3. È possibile impostare più filtri per recuperare i dati solo dopo un determinato intervallo di tempo o con un valore di stato specifico. https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId> and statusInfo/status eq 'failure' and activityDateTime ge 2022-10-10T09:47:34Z È anche possibile controllare lo stato dell'utente in base al valore externalId usato nel sistema di origine come proprietà di ancoraggio/join dell'origine. https://graph.microsoft.com/beta/auditLogs/provisioning/?$filter=jobid eq '<jobId>' and sourceIdentity/id eq '701984'

Appendice

Richiesta in blocco con lo schema utente aziendale SCIM

Nella richiesta in blocco illustrata di seguito viene usato lo schema utente aziendale e utente di base SCIM standard.

Testo della richiesta

{
    "schemas": ["urn:ietf:params:scim:api:messages:2.0:BulkRequest"],
    "Operations": [
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701984",
            "userName": "bjensen@example.com",
            "name": {
                "formatted": "Ms. Barbara J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Barbara",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Babs Jensen",
            "nickName": "Babs",
            "emails": [
            {
              "value": "bjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Universal City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91608",
              "country": "USA",
              "formatted": "100 Universal City Plaza\nHollywood, CA 91608 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5555",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Guide",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701984",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "89607",
                     "displayName": "John Smith"
                 }
            }
        }
    },
    {
        "method": "POST",
        "bulkId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "path": "/Users",
        "data": {
            "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User",
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"],
            "externalId": "701985",
            "userName": "Kjensen@example.com",
            "name": {
                "formatted": "Ms. Kathy J Jensen, III",
                "familyName": "Jensen",
                "givenName": "Kathy",
                "middleName": "Jane",
                "honorificPrefix": "Ms.",
                "honorificSuffix": "III"
            },
            "displayName": "Kathy Jensen",
            "nickName": "Kathy",
            "emails": [
            {
              "value": "kjensen@example.com",
              "type": "work",
              "primary": true
            }
            ],
            "addresses": [
            {
              "type": "work",
              "streetAddress": "100 Oracle City Plaza",
              "locality": "Hollywood",
              "region": "CA",
              "postalCode": "91618",
              "country": "USA",
              "formatted": "100 Oracle City Plaza\nHollywood, CA 91618 USA",
              "primary": true
            }
            ],
            "phoneNumbers": [
            {
              "value": "555-555-5545",
              "type": "work"
            }
            ],
            "userType": "Employee",
            "title": "Tour Lead",
            "preferredLanguage": "en-US",
            "locale": "en-US",
            "timezone": "America/Los_Angeles",
            "active":true,
            "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                 "employeeNumber": "701985",
                 "costCenter": "4130",
                 "organization": "Universal Studios",
                 "division": "Theme Park",
                 "department": "Tour Operations",
                 "manager": {
                     "value": "701984",
                     "displayName": "Barbara Jensen"
                 }
            }
        }
    }
],
    "failOnErrors": null
}

Passaggi successivi