Defender for Cloud Apps-REST-API

Klassisches Portal – In diesem Artikel wird beschrieben, wie Sie mit Defender for Cloud Apps über HTTPS interagieren.

Die Microsoft Defender for Cloud Apps-API bietet programmgesteuerten Zugriff auf Defender for Cloud Apps über REST-API-Endpunkte. Anwendungen können die API zum Durchführen von Lese- und Aktualisierungsvorgängen für Defender for Cloud Apps-Daten und -Objekte verwenden. Die Defender for Cloud Apps-API unterstützt z.B. die folgenden häufigen Vorgänge für ein Benutzerobjekt:

  • Protokolldateien für Cloud Discovery hochladen
  • Blockskripts generieren
  • Auflisten von Aktivitäten und Warnungen
  • Warnungen verwerfen oder auflösen

Die API-URL-Struktur

Um die Defender for Cloud Apps-API zu verwenden, müssen Sie zuerst die API-URL von Ihrem Mandanten abrufen. Die API URL verwendet das folgende Format: https://<portal_url>/api/<endpoint>.

Führen Sie die folgenden Schritte aus, um die Defender for Cloud Apps-API-URL für Ihren Mandanten abzurufen:

  1. Wählen Sie im Microsoft Defender-Portal Einstellungen aus. Wählen Sie dann Cloud-Apps aus. Wählen Sie unter System die Option Info aus.

  2. Auf dem Info-Bildschirm von Defender for Cloud Apps wird die API-URL angezeigt.

    View your data center.

Nachdem Sie über die API-URL verfügen, fügen Sie das /api Suffix hinzu, um Ihre API-URL abzurufen. Wenn die URL Ihres Portals beispielsweise https://mytenant.us2.contoso.com lautet, lautet ihre API-URL https://mytenant.us2.portal.cloudappsecurity.com/api.

API-Token

Defender für Cloud-Apps erfordert ein API-Token im Header aller API-Anforderungen an den Server, z. B. folgendes:

Authorization: Token <your_token_key>

Wo <your_token_key> befindet sich Ihr persönliches API-Token.

Weitere Informationen zu API-Token finden Sie unter Verwalten von API-Token.

API-Token – Beispiel

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

Welche Aktionen werden unterstützt?

In der folgenden Tabelle werden die unterstützten Aktionen beschrieben:

Ressource HTTP-Verben URI-Routen
Aktivitäten GET oder POST /api/v1/activities/
Alerts GET oder POST /api/v1/alerts
Datenanreicherung GET, POST oder DELETE. /api/subnet/
Entitäten GET oder POST /api/v1/entities/
Dateien GET oder POST /api/v1/files/

Wobei Ressource eine Gruppe von verbundenen Entitäten darstellt.

Welche Feldtypen werden unterstützt?

Die folgende Tabelle beschreibt die unterstützten Feldtypen:

Feld Beschreibung
string Eine textbezogene Zeichenfolge
boolean Ein boolescher Wert der „wahr“ oder „falsch“ darstellt.
integer 32-Bit-Ganzzahl mit Vorzeichen
Zeitstempel Millisekunden seit Epoche

Zeitstempel

Erwähnungen von Zeitstempeln in der Defender for Cloud Apps-API beziehen sich auf den Unix-Zeitstempel in Millisekunden. Dieser Zeitstempel wird durch die Anzahl der Millisekunden seit 1970-01-01 0:00:00 bestimmt. Sie können das PowerShell-Cmdlet get-date verwenden, um Datumsangaben in Zeitstempel zu konvertieren.

Grenzwerte

Sie können ihre Anforderungen einschränken, indem Sie einen Grenzwertparameter in der Anforderung angeben.

Die folgenden Methoden werden für die Bereitstellung des Grenzparameters unterstützt:

  • URL-codiert (mit Content-Type: application/x-www-form-urlencoded Header)
  • Formulardaten
  • JSON-Textkörper (mit Content-Type: multipart/form-data und einem geeigneten Begrenzungsheader)

Hinweis

  • Wenn kein Grenzwert angegeben wird, wird ein Standardwert von 100 festgelegt.
  • Antworten auf alle Anforderungen, die mit dem API-Token vorgenommen wurden, sind auf maximal 100 Elemente beschränkt.
  • Der Drosselungsgrenzwert für alle API-Anforderungen beträgt 30 Anforderungen pro Minute pro Mandant.

Filter

Wenn Sie eine große Anzahl von Ergebnissen erhalten, ist es hilfreich, Anforderungen mithilfe von Filtern zu optimieren. In diesem Abschnitt wird die Struktur von Filtern beschrieben, sowie Operatoren, die mit ihnen verwendet werden können.

Struktur

Einige unserer API-Endpunkte unterstützen Filter beim Ausführen von Abfragen. In den relevanten Abschnitten finden Sie einen Verweis, in dem alle verfügbaren filterbaren Felder und unterstützten Operatoren für diese Ressource aufgelistet sind.

Die meisten Filter unterstützen mehrere Werte, um leistungsstarke Abfragen bereitzustellen. Beim Kombinieren von Filtern und Operatoren verwenden wir AND als logischen Operator zwischen den Filtern.

Filter - Beispiel

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
}'

Operatoren

Hinweis

Nicht alle Operatoren sind mit allen Filtern kompatibel.

Die folgende Tabelle beschreibt die unterstützten Operatoren:

Operator Antworttyp Beschreibung
contains Eine Liste von Zeichenfolgen Gibt alle relevanten Datensätze zurück, die eine der bereitgestellten Zeichenfolgen enthalten.
Deq Liste der Werte Gibt alle Datensätze zurück, die einen Wert enthalten, der nicht den angegebenen Werten entspricht.
descendantof Liste der Werte Gibt alle relevanten Datensätze zurück, die mit Werten oder deren Nachfolgern übereinstimmen
doesnotstartwith Eine Liste von Zeichenfolgen Gibt alle relevanten Datensätze zurück, die nicht mit jeder der bereitgestellten Zeichenfolgen beginnen.
endswith Eine Liste von Zeichenfolgen Gibt alle relevanten Datensätze zurück, die mit einer der bereitgestellten Zeichenfolgen enden.
eq Liste der Werte Gibt alle relevanten Datensätze zurück, die einen der bereitgestellten Werte enthalten.
gt Einzelwert Gibt alle Datensätze zurück, deren Wert größer als der angegebene Wert ist.
gte Einzelwert Gibt alle Datensätze zurück, deren Wert größer oder gleich dem angegebenen Wert ist.
gte_ndays Zahl Sendet alle Datensätze zurück, deren Datum nach N Tagen liegt.
isnotset boolean Wenn dieser Wert auf „true" festgelegt ist, werden alle relevanten Datensätze zurückgegeben, die keinen Wert im angegebenen Feld haben.
Isset boolean Wenn dieser Wert auf „true" festgelegt ist, werden alle relevanten Datensätze zurückgegeben, die einen Wert im angegebenen Feld haben.
lt Einzelwert Gibt alle Datensätze zurück, deren Wert kleiner als der angegebene Wert ist.
lte Einzelwert Gibt alle Datensätze zurück, deren Wert kleiner oder gleich dem angegebenen Wert ist.
lte_ndays Zahl Sendet alle Datensätze zurück, deren Datum vor N Tagen liegt.
ncontains Eine Liste von Zeichenfolgen Gibt alle relevanten Datensätze zurück, die keine der bereitgestellten Zeichenfolgen enthalten
ndescendantof Liste der Werte Gibt alle relevanten Datensätze zurück, die nicht mit Werten oder deren Nachfolgern übereinstimmen
NEQ Liste der Werte Gibt alle relevanten Datensätze zurück, die nicht alle bereitgestellten Werte enthalten
range Liste der Objekte, die die Felder „start" und „end" enthalten Gibt alle Datensätze innerhalb eines der bereitgestellten Bereiche zurück.
startswith Eine Liste von Zeichenfolgen Gibt alle relevanten Datensätze zurück, die mit einer der bereitgestellten Zeichenfolgen beginnen.
startswithsingle Zeichenfolge Gibt alle relevanten Datensätze zurück, die mit der bereitgestellten Zeichenfolge beginnen.
text Zeichenfolge Führt eine Volltextsuche aller Datensätze aus.

Nächste Schritte

Sollten Sie Probleme haben, helfen wir Ihnen gerne weiter. Um Unterstützung oder Support für Ihr Produktproblem zu erhalten, öffnen Sie bitte ein Supportticket.