Uso di cURL

cURL è uno strumento open source a riga di comando per il trasferimento dei dati con sintassi URL, che supporta vari protocolli tra cui HTTP e HTTPS. Gli esempi riportati in questo documento utilizzano cURL per dimostrare come accedere all'API REST dei domini di Identity.

Uso di cURL per accedere alle API REST

  1. Installa cURL. Vedere Passo 2: installazione di cURL.

  2. In una finestra di comando, impostare la variabile di ambiente cURL, CURL_CA_BUNDLE, sulla posizione del bundle di certificati CA locale. Per informazioni sulla verifica del certificato CA mediante cURL, vedere: http://curl.haxx.se/docs/sslcerts.html.

    Nota

    Per ulteriori informazioni sui requisiti di autorizzazione e autenticazione, vedere Autorizzazione.

  3. Richiamare cURL e specificare una o più delle seguenti opzioni della riga di comando, se necessario, per indirizzarne l'esecuzione.

    • -d, --data @file.json: identifica il documento di richiesta, in formato JSON, sul computer locale.
    • -F, --form @file.json: identifica i dati del form, in formato JSON, nel computer locale.
    • -H, --header: definisce l'intestazione della richiesta nel formato HEADER: VALUE. I valori dell'intestazione dipendono dall'endpoint a cui si sta accedendo.
      • Tipo di contenuto del documento di richiesta.

      • L'autorizzazione X-Client-ID, API_KEY_ID, per OAuth 2.0

      • L'autorizzazione X-Client-Secret, API_KEY_SECRET, per OAuth2.0

    • -i: visualizza le informazioni sull'intestazione della risposta.
    • -X: indica il metodo di richiesta HTTP (DELETE, GET, POST, PATCH o PUT). Se questa opzione viene omessa, l'impostazione predefinita è GET.

URL del comando cURL

L'URL utilizzato con il comando cURL è lo stesso descritto in Invia richieste, ad eccezione del fatto che è necessario sostituire gli spazi nell'URL con i caratteri più (+) e sostituire le virgolette (") con %22.

Qualsiasi carattere di un URL esterno al set di caratteri ASCII, ad esempio spazi e virgolette, deve essere codificato mediante URL. Ad esempio, il seguente URL contiene una query di filtro che cerca un utente con un nome utente contenente jen o che inizia con bj. Si noti che contiene spazi.

https://<domainURL>/admin/v1/Users?filter=userName co "jen" or userName sw "bj"

Per utilizzare questo URL in una riga di comando cURL, è necessario modificarlo in:

https://<domainURL>/admin/v1/Users?filter=userName+co+%22jen%22+or+userName+sw+%22bj%22

Comando cURL per l'invio di una richiesta GET

curl 
-H "Accept: application/scim+json" 
-H "Authorization: Bearer <really long access token here>" 
-G https://<domainURL>/admin/v1/Groups?filter=displayName+co+%22admin%22"

Comando cURL per l'invio di una richiesta POST

curl 
-H "Content-Type: application/scim+json" 
-H "Authorization: Bearer <really long access token here>" 
-d '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],"userName":"bjensen@example.com","name": {"familyName":"Jensen","givenName": "Barbara","middleName": "Jane"},"emails": [{"value": "bjensen@example.com","type": "work","primary": true}]}' "https://<domainURL>/admin/v1/Users"