Condividi tramite


API REST di Defender for Cloud Apps

Questo articolo descrive come interagire con Defender for Cloud Apps tramite HTTPS.

L'API Microsoft Defender for Cloud Apps consente l'accesso a livello di codice ai Defender for Cloud Apps tramite gli endpoint dell'API REST. Le applicazioni possono usare l'API per eseguire operazioni di lettura e aggiornamento su dati e oggetti Defender for Cloud Apps. Ad esempio, l'API Defender for Cloud Apps supporta le operazioni comuni seguenti per un oggetto utente:

  • Caricare i file di log per l'individuazione cloud
  • Generare script in blocchi
  • Elencare attività e avvisi
  • Ignorare o risolvere gli avvisi

Struttura dell'URL dell'API

Per usare l'API Defender for Cloud Apps, è prima necessario ottenere l'URL dell'API dal tenant. L'URL API usa il formato seguente: https://<portal_url>/api/<endpoint>.

Per ottenere l'URL dell'API Defender for Cloud Apps per il tenant, seguire questa procedura:

  1. Nel portale Microsoft Defender selezionare Impostazioni. Scegliere quindi App cloud. In Sistema selezionare Informazioni.

  2. Nella schermata Defender for Cloud Apps informazioni su è possibile visualizzare l'URL dell'API.

    Visualizzare il data center.

Dopo aver ottenuto l'URL dell'API, aggiungervi il /api suffisso per ottenere l'URL dell'API. Ad esempio, se l'URL del portale è https://mytenant.us2.contoso.com, l'URL DELL'API è https://mytenant.us2.portal.cloudappsecurity.com/api.

Token API

Defender for Cloud Apps richiede un token API nell'intestazione di tutte le richieste API al server, ad esempio:

Authorization: Token <your_token_key>

Dove <your_token_key> si trova il token API personale.

Per altre informazioni sui token API, vedere Gestione dei token API.

Token API - esempio

curl -XGET -H "Authorization:Token <your_token_key>" "https://<tenant_id>.<tenant_region>.portal.cloudappsecurity.com/api/example-endpoint"

Quali azioni sono supportate?

Nella tabella seguente vengono descritte le azioni supportate:

Risorsa Verbi HTTP Route URI
Attività GET o POST /api/v1/activities/
Avvisi GET o POST /api/v1/alerts/
Arricchimento dei dati GET, POST o DELETE /api/subnet/
Entità GET o POST /api/v1/entities/
File GET o POST /api/v1/files/

Dove Risorsa rappresenta un gruppo di entità correlate.

Quali tipi di campo sono supportati?

Nella tabella seguente vengono descritti i tipi di campo supportati:

Campo Descrizione
stringa Stringa testuale
booleano Valore booleano che rappresenta true/false
integer Intero con segno a 32 bit
Timestamp Millisecondi dall'epoca

Timestamp

Le menzioni dei timestamp nell'API Defender for Cloud Apps fanno riferimento al timestamp Unix in millisecondi. Questo timestamp è determinato dal numero di millisecondi dal 1970-01-01 0:00:00. È possibile usare il cmdlet di PowerShell get-date per convertire le date in timestamp.

Limiti

È possibile scegliere di limitare le richieste specificando un parametro limite nella richiesta.

Per fornire il parametro limit sono supportati i metodi seguenti:

  • Codificato con URL (con Content-Type: application/x-www-form-urlencoded intestazione)
  • Dati moduli
  • Corpo JSON (con Content-Type: multipart/form-data e un'intestazione di limite appropriata)

Nota

  • Se non viene specificato alcun limite, verrà impostato un valore predefinito pari a 100.
  • Le risposte per tutte le richieste effettuate con il token API sono limitate a un massimo di 100 elementi.
  • Il limite di limitazione per tutte le richieste API è di 30 richieste al minuto per ogni tenant.

Filtri

Quando si ha un numero elevato di risultati, sarà utile ottimizzare le richieste usando i filtri. Questa sezione descrive la struttura degli operatori e che possono essere usati con i filtri.

Struttura

Alcuni degli endpoint API supportano i filtri durante l'esecuzione di query. Nelle sezioni pertinenti è disponibile un riferimento che elenca tutti i campi filtrabili disponibili e gli operatori supportati per tale risorsa.

La maggior parte dei filtri supporta più valori per fornire query avanzate. Quando si combinano filtri e operatori, viene usato AND come operatore logico tra i filtri.

Filtri - esempio

curl -XGET -H "Authorization:Token <your_token_key>" "https://<tenant_id>.<tenant_region>.portal.cloudappsecurity.com/api/example-endpoint" -d '{
  "filters": {
    "some.field": {
      "eq": ["value1", "value2"],
      "isset": true
    },
    "some.field2": {
      "gte": 5
    }
  },
  "skip": 5,
  "limit": 10
}'

Operatori

Nota

Non tutti gli operatori sono compatibili con tutti i filtri.

Nella tabella seguente vengono descritti gli operatori supportati:

Operatore Tipo di risposta Descrizione
Contiene elenco di stringhe Restituisce tutti i record rilevanti contenenti una delle stringhe specificate
deq elenco di valori Restituisce tutti i record che contengono un valore diverso da uno dei valori specificati
discendente elenco di valori Restituisce tutti i record pertinenti corrispondenti a valori o discendenti di essi
doesnotstartwith elenco di stringhe Restituisce tutti i record rilevanti che non iniziano con ognuna delle stringhe specificate
endswith elenco di stringhe Restituisce tutti i record rilevanti che terminano con una delle stringhe specificate
Eq elenco di valori Restituisce tutti i record rilevanti contenenti uno dei valori specificati
Gt valore singolo Restituisce tutti i record il cui valore è maggiore del valore specificato
Gte valore singolo Restituisce tutti i record il cui valore è maggiore o uguale al valore specificato
gte_ndays numero Restituisce tutti i record con data successiva a N giorni fa
isnotset booleano Se impostato su "true", restituisce tutti i record rilevanti che non hanno un valore nel campo specificato
isset booleano Se impostato su "true", restituisce tutti i record rilevanti con un valore nel campo specificato
lt valore singolo Restituisce tutti i record il cui valore è minore del valore specificato
lte valore singolo Restituisce tutti i record il cui valore è minore o uguale al valore specificato
lte_ndays numero Restituisce tutti i record con data precedente a N giorni fa
ncontains elenco di stringhe Restituisce tutti i record rilevanti che non contengono una delle stringhe specificate
ndescendantof elenco di valori Restituisce tutti i record rilevanti che non corrispondono a valori o discendenti di essi
neq elenco di valori Restituisce tutti i record rilevanti che non contengono tutti i valori specificati
gamma elenco di oggetti contenenti i campi "start" e "end" Restituisce tutti i record all'interno di uno degli intervalli specificati
startswith elenco di stringhe Restituisce tutti i record rilevanti a partire da una delle stringhe specificate
startswithsingle stringa Restituisce tutti i record rilevanti a partire dalla stringa specificata
Testo stringa Esegue una ricerca full-text di tutti i record

Passaggi successivi

Se si verificano problemi, siamo qui per aiutarti. Per ottenere assistenza o supporto per il problema del prodotto, aprire un ticket di supporto.