Method: projects.assets.group

Filtre les éléments d'une organisation et les regroupe en fonction de leurs propriétés spécifiées.

Requête HTTP


Les URL utilisent la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
parent

string

Obligatoire. Nom de l'organisation à regrouper. Il est au format "organizations/[organization_id], folders/[folder_id] ou projects/[projectId]".

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "filter": string,
  "groupBy": string,
  "compareDuration": string,
  "readTime": string,
  "pageToken": string,
  "pageSize": integer
}
Champs
filter

string

Expression qui définit le filtre à appliquer aux composants. L'expression est une liste de zéro ou plusieurs restrictions combinées à l'aide des opérateurs logiques AND et OR. Les parenthèses sont acceptées, et OR a une priorité plus élevée que AND.

Les restrictions ont la forme <field> <operator> <value> et peuvent être précédées d'un caractère - pour indiquer une négation. Les champs correspondent à ceux définis dans la ressource Asset. Voici quelques exemples :

  • nom
  • securityCenterProperties.resource_name
  • resourceProperties.a_property
  • securityMarks.marks.marka

Les opérateurs compatibles sont les suivants:

  • = pour tous les types de valeurs.
  • >, <, >=, <= pour les valeurs entières.
  • :, qui signifie "mise en correspondance de sous-chaîne", pour les chaînes.

Les types de valeurs acceptés sont les suivants:

  • littéraux de chaîne entre guillemets.
  • des littéraux entiers sans guillemets.
  • Les littéraux booléens true et false sans guillemets.

Les combinaisons de champs et d'opérateurs suivantes sont acceptées:

  • nom : =
  • updateTime: =, >, <, >=, <=

Utilisation: doit être exprimé en millisecondes depuis l'epoch ou en tant que chaîne RFC3339. Exemples: updateTime = "2019-06-10T16:07:18-07:00" updateTime = 1560208038000

  • createTime: =, >, <, >=, <=

Utilisation: doit être exprimé en millisecondes depuis l'epoch ou en tant que chaîne RFC3339. Exemples: createTime = "2019-06-10T16:07:18-07:00" createTime = 1560208038000

  • iamPolicy.policy_blob: =, :
  • resourceProperties: =, :, >, <, >=, <=
  • securityMarks.marks: =, :
  • securityCenterProperties.resource_name: =, :
  • securityCenterProperties.resource_name_display_name: =, :
  • securityCenterProperties.resource_type: =, :
  • securityCenterProperties.resource_parent: =, :
  • securityCenterProperties.resource_parent_display_name: =, :
  • securityCenterProperties.resource_project: =, :
  • securityCenterProperties.resource_project_display_name: =, :
  • securityCenterProperties.resource_owners: =, :

Par exemple, resourceProperties.size = 100 est une chaîne de filtre valide.

Utilisez une correspondance partielle sur la chaîne vide pour filtrer en fonction d'une propriété existante: resourceProperties.my_property : ""

Utilisez une correspondance partielle inversée sur la chaîne vide pour filtrer en fonction d'une propriété inexistante: -resourceProperties.my_property : ""

groupBy

string

Obligatoire. Expression qui définit les champs de composants à utiliser pour le regroupement. La valeur de chaîne doit respecter la syntaxe SQL: liste de champs séparés par une virgule. Par exemple: "securityCenterProperties.resource_project,securityCenterProperties.project".

Les champs suivants sont acceptés lorsque compareDuration n'est pas défini:

  • securityCenterProperties.resource_project
  • securityCenterProperties.resource_project_display_name
  • securityCenterProperties.resource_type
  • securityCenterProperties.resource_parent
  • securityCenterProperties.resource_parent_display_name

Les champs suivants sont acceptés lorsque compareDuration est défini:

  • securityCenterProperties.resource_type
  • securityCenterProperties.resource_project_display_name
  • securityCenterProperties.resource_parent_display_name
compareDuration

string (Duration format)

Lorsque compareDuration est défini, la propriété "stateChange " de GroupResult est mise à jour pour indiquer si l'élément a été ajouté, supprimé ou est resté présent pendant la période de compareDuration qui précède le readTime. Il s'agit du temps écoulé entre (readTime - compareDuration) et readTime.

La valeur de la modification d'état est dérivée de la présence de l'asset aux deux moments. Les changements d'état intermédiaires entre les deux moments n'ont aucune incidence sur le résultat. Par exemple, les résultats ne sont pas affectés si l'asset est supprimé et recréée.

Valeurs possibles pour "stateChange" lorsque compareDuration est spécifié:

  • "ADDED": indique que l'élément n'était pas présent au début de compareDuration, mais qu'il l'était à reference_time.
  • "REMOVED": indique que l'asset était présent au début de compareDuration, mais pas à reference_time.
  • "ACTIVE": indique que l'élément était présent au début et à la fin de la période définie par "compareDuration" et "reference_time".

Si compareDuration n'est pas spécifié, le seul état de transition possible est "UNUSED", qui sera défini pour tous les composants présents au moment de la lecture.

Si ce champ est défini, stateChange doit être un champ spécifié dans groupBy.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"

readTime

string (Timestamp format)

Heure utilisée comme point de référence lors du filtrage des composants. Le filtre est limité aux éléments existants au moment indiqué, et leurs valeurs correspondent à celles de ce moment précis. Si ce champ n'est pas spécifié, la version de l'API de NOW est utilisée par défaut.

Utilise la norme RFC 3339, où la sortie générée est toujours normalisée avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

pageToken

string

La valeur renvoyée par le dernier GroupAssetsResponse indique qu'il s'agit de la continuation d'un appel assets.group précédent et que le système doit renvoyer la page de données suivante.

pageSize

integer

Nombre maximal de résultats à renvoyer dans une seule réponse. La valeur par défaut est 10. Elle doit être comprise entre 1 et 1 000 (inclus).

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient une instance de GroupAssetsResponse.

Champs d'application des autorisations

Requiert le niveau d'accès OAuth suivant :

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

Pour en savoir plus, consultez Authentication Overview.