Method: projects.sources.findings.group

Hiermit werden die Ergebnisse einer Organisation oder Quelle gefiltert und nach den angegebenen Attributen gruppiert.

Wenn Sie eine Gruppierung für alle Quellen erstellen möchten, geben Sie - als Quell-ID an. Beispiel: /v1/organizations/{organization_id}/sources/-/findings, /v1/folders/{folder_id}/sources/-/findings, /v1/projects/{projectId}/sources/-/findings

HTTP-Anfrage


Die URLs verwenden die Syntax der gRPC-Transcodierung.

Pfadparameter

Parameter
parent

string

Pflichtangabe. Name der Quelle, nach der gruppiert werden soll. Das Format ist organizations/[organization_id]/sources/[source_id], folders/[folder_id]/sources/[source_id] oder projects/[projectId]/sources/[source_id]. Wenn Sie die Gruppierung auf alle Quellen anwenden möchten, geben Sie „-“ als „source_id“ an. Beispiel: organizations/{organization_id}/sources/-, folders/{folder_id}/sources/- oder projects/{projectId}/sources/-

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "filter": string,
  "groupBy": string,
  "readTime": string,
  "compareDuration": string,
  "pageToken": string,
  "pageSize": integer
}
Felder
filter

string

Ausdruck, der den Filter definiert, der auf alle Ergebnisse angewendet werden soll. Der Ausdruck besteht aus einer Liste mit einer oder mehreren Einschränkungen, die über die logischen Operatoren AND und OR kombiniert werden. Klammern werden unterstützt und OR hat eine höhere Priorität als AND.

Einschränkungen haben das Format <field> <operator> <value> und können ein --Zeichen vorangestellt haben, um eine Verneinung anzugeben. Hier einige Beispiele:

  • Name
  • sourceProperties.a_property
  • securityMarks.marks.marka

Folgende Operatoren werden unterstützt:

  • = für alle Werttypen.
  • >, <, >=, <= für Ganzzahlwerte.
  • :, d. h. Teilstringabgleich, für Strings.

Folgende Werttypen werden unterstützt:

  • Stringliterale in Anführungszeichen.
  • Ganzzahlliterale ohne Anführungszeichen.
  • Boolesche Literale true und false ohne Anführungszeichen

Die folgenden Kombinationen aus Feld und Operator werden unterstützt:

  • Name: =
  • parent: =, :
  • resourceName: =, :
  • state: =, :
  • category: =, :
  • externalUri: =, :
  • eventTime: =, >, <, >=, <=

Verwendung: Dies sollte in Millisekunden seit der Epoche oder als RFC3339-String angegeben werden. Beispiele: eventTime = "2019-06-10T16:07:18-07:00" eventTime = 1560208038000

  • severity: =, :
  • workflowState: =, :
  • securityMarks.marks: =, :
  • sourceProperties: =, :, >, <, >=, <=

sourceProperties.size = 100 ist beispielsweise ein gültiger Filterstring.

Verwenden Sie einen teilweisen Abgleich mit dem leeren String, um nach einem vorhandenen Attribut zu filtern: sourceProperties.my_property : ""

Verwenden Sie eine negierte Teilstringübereinstimmung für den leeren String, um nach einer nicht vorhandenen Property zu filtern: -sourceProperties.my_property : ""

  • resource:
  • resource.name: =, :
  • resource.parent_name: =, :
  • resource.parent_display_name: =, :
  • resource.project_name: =, :
  • resource.project_display_name: =, :
  • resource.type: =, :
groupBy

string

Pflichtangabe. Ausdruck, der festlegt, welche Asset-Felder für die Gruppierung verwendet werden sollen (einschließlich stateChange). Der Stringwert sollte der SQL-Syntax entsprechen: durch Kommas getrennte Liste von Feldern. Beispiel: „parent,resourceName“.

Die folgenden Felder werden unterstützt, wenn „compareDuration“ festgelegt ist:

  • stateChange
readTime
(deprecated)

string (Timestamp format)

Zeitpunkt, der beim Filtern von Ergebnissen als Referenzpunkt verwendet wird. Der Filter ist auf Ergebnisse beschränkt, die zum angegebenen Zeitpunkt vorhanden sind. Die Werte sind die zu diesem Zeitpunkt. Wenn dieses Feld nicht vorhanden ist, wird standardmäßig die Version von NOW der API verwendet.

Es wird RFC 3339 verwendet, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Glieder mit Dezimalstellen enthält. Andere Achsenbezeichnungen als „Z“ sind ebenfalls zulässig. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

compareDuration
(deprecated)

string (Duration format)

Wenn „compareDuration“ festgelegt ist, wird das Attribut „stateChange“ des GroupResult aktualisiert, um anzugeben, ob sich der Status der Abweichung geändert hat, ob der Status der Abweichung unverändert geblieben ist oder ob die Abweichung während des Zeitraums „compareDuration“ hinzugefügt wurde, der der readTime vorausgeht. Das ist die Zeit zwischen (readTime – compareDuration) und readTime.

Der Wert „stateChange“ wird anhand der Anwesenheit und des Zustands des Ergebnisses zu den beiden Zeitpunkten abgeleitet. Zwischenzeitliche Statusänderungen zwischen den beiden Zeitpunkten wirken sich nicht auf das Ergebnis aus. Die Ergebnisse sind beispielsweise nicht betroffen, wenn das Ergebnis deaktiviert und dann wieder aktiviert wird.

Mögliche Werte für „stateChange“, wenn „compareDuration“ angegeben ist:

  • „CHANGED“ (GEÄNDERT): gibt an, dass der Wert zu Beginn von „compareDuration“ vorhanden war und dem angegebenen Filter entsprach, aber seinen Status zu „readTime“ geändert hat.
  • „UNCHANGED“: Gibt an, dass der Wert am Anfang der Vergleichsdauer vorhanden war und mit dem angegebenen Filter übereinstimmte und sich der Status zum Zeitpunkt der Lesezeit nicht geändert hat.
  • „ADDED“ (HINZUGEFÜGT): gibt an, dass das Ergebnis nicht mit dem angegebenen Filter übereinstimmt oder zu Beginn von „compareDuration“ nicht vorhanden war, aber zu „readTime“ vorhanden war.
  • „ENTFERNT“: gibt an, dass das Ergebnis vorhanden war und zu Beginn von „compareDuration“ mit dem Filter übereinstimmte, aber nicht mit dem Filter zu „readTime“.

Wenn „compareDuration“ nicht angegeben ist, ist „UNUSED“ die einzige mögliche Änderung des Status. Dieser Status wird für alle Ergebnisse festgelegt, die zum Zeitpunkt „readTime“ vorhanden sind.

Wenn dieses Feld festgelegt ist, muss stateChange ein Feld in groupBy sein.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit "s". Beispiel: "3.5s".

pageToken

string

Der Wert, der vom letzten GroupFindingsResponse zurückgegeben wurde. Gibt an, dass dies eine Fortsetzung eines vorherigen findings.group-Aufrufs ist und dass das System die nächste Datenseite zurückgeben soll.

pageSize

integer

Die maximale Anzahl von Ergebnissen, die in einer einzelnen Antwort zurückgegeben werden sollen. Der Standardwert ist 10, der Mindestwert ist 1 und der Höchstwert ist 1.000.

Antworttext

Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von GroupFindingsResponse.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie unter Authentication Overview.