Condividi tramite


Guida introduttiva: Introduzione al provisioning in ingresso basato sulle API con cURL

Introduzione

cURL è uno strumento da riga di comando comune, gratuito, open source usato dagli sviluppatori di API ed è disponibile per impostazione predefinita in Windows 10/11. Questa esercitazione descrive come testare rapidamente il provisioning in ingresso basato sulle API con cURL.

Prerequisiti

  • È stata configurata un'app di provisioning in ingresso guidata dall'API.
  • Hai configurato un oggetto servizio e hai accesso all'API di provisioning in ingresso. Prendere nota dei ClientId e ClientSecret della tua app principale del servizio da usare in questa esercitazione.

Caricare i dati degli utenti nell'API di provisioning entrante

  1. Recuperare il client_id e client_secret dell'entità servizio che ha accesso all'API di provisioning in ingresso.
  2. Usare il flusso di concessione di OAuth client_credentials per ottenere un token di accesso. Sostituire le variabili [yourClientId], [yourClientSecret] e [yourTenantId] con i valori applicabili al programma di installazione ed eseguire il comando cURL seguente. Copiare il valore del token di accesso generato
    curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d "client_id=[yourClientId]&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default&client_secret=[yourClientSecret]&grant_type=client_credentials" "https://login.microsoftonline.com/[yourTenantId]/oauth2/v2.0/token"
    
  3. Copiare la richiesta bulk con SCIM Enterprise User Schema e salvare il contenuto in un file denominato scim-bulk-upload-users.json.
  4. Sostituire la variabile [InboundProvisioningAPIEndpoint] con l'endpoint dell'API di provisioning associato all'app di provisioning. Usare il valore [AccessToken] del passaggio precedente ed eseguire il comando curl seguente per caricare la richiesta in blocco nell'endpoint dell'API di provisioning.
    curl -v "[InboundProvisioningAPIEndpoint]" -d @scim-bulk-upload-users.json -H "Authorization: Bearer [AccessToken]" -H "Content-Type: application/scim+json"
    
  5. Al termine del caricamento, si riceve il codice di risposta HTTP 202 Accettato.
  6. Il servizio di provisioning avvia immediatamente l'elaborazione del payload della richiesta in blocco ed è possibile visualizzare i dettagli accedendo ai registri di provisioning dell'applicazione di provisioning in entrata.

Verificare l'elaborazione del payload della richiesta in blocco

  1. Accedere all'interfaccia di amministrazione di Microsoft Entra come almeno un amministratore di applicazioni.

  2. Naviga a Entra ID>applicazioni aziendali.

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

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

  5. Selezionare Visualizza log di provisioning per aprire la sezione Log di provisioning. In alternativa, è possibile selezionare l'opzione di menu Monitor Provisioning logs ( Monitoraggio>log di provisioning).

    Screenshot del menu dei log di provisioning.

  6. Selezionare un 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 dall'API , vedere i dettagli dei dati utente estratti dalla richiesta in blocco.
    • Il passaggio Corrispondenza utente mostra i dettagli di qualsiasi corrispondenza utente in base all'identificatore corrispondente. Se si verifica una corrispondenza con un 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.
    • Il passaggio Determinare se l'utente è nell'ambito mostra i dettagli della valutazione del filtro di ambito. Per impostazione predefinita, tutti gli utenti vengono elaborati. Se si imposta un filtro di ambito (ad esempio, elaborare solo gli utenti appartenenti al reparto vendite), i dettagli di valutazione del filtro di ambito vengono visualizzati in questo passaggio.
    • Il passaggio Provision User chiama il passaggio di elaborazione finale e le modifiche applicate all'account utente.
    • Utilizzare la scheda Proprietà modificate per visualizzare gli aggiornamenti degli attributi.

Appendice

Visualizzare questa sezione per informazioni sulla richiesta in blocco con SCIM Enterprise User Schema.

Richiesta in blocco con schema utente SCIM Enterprise

La richiesta in blocco illustrata di seguito usa lo schema standard SCIM Core User and Enterprise User.

Corpo 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