Method: organizations.assets.group

Filtra los recursos de una organización y los agrupa según sus propiedades especificadas.

Solicitud HTTP


Las URL usan la sintaxis de transcodificación gRPC.

Parámetros de ruta de acceso

Parámetros
parent

string

Obligatorio. Es el nombre de la organización para agrupar. Su formato es "organizations/[organization_id]".

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "filter": string,
  "groupBy": string,
  "compareDuration": string,
  "readTime": string,
  "pageToken": string,
  "pageSize": integer
}
Campos
filter

string

Es una expresión que define el filtro que se aplicará a todos los recursos. La expresión es una lista de cero o más restricciones combinadas a través de los operadores lógicos AND y OR. No se admiten paréntesis, y OR tiene una prioridad más alta que AND.

Las restricciones tienen el formato <field> <operator> <value> y pueden tener un carácter - delante para indicar la negación. Los campos se asignan a los definidos en el recurso Asset. Los ejemplos incluyen:

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

Los operadores admitidos son los siguientes:

  • = para todos los tipos de valores.
  • >, <, >=, <= para valores enteros
  • :, que significa coincidencia de substring, para cadenas.

Los tipos de valores admitidos son los siguientes:

  • literales de cadena entre comillas.
  • literales de número entero sin comillas.
  • Literales booleanos true y false sin comillas.

Por ejemplo, resourceProperties.size = 100 es una cadena de filtro válida.

groupBy

string

Obligatorio. Es una expresión que define qué campos de recursos se deben usar para el agrupamiento. El valor de cadena debe seguir la sintaxis de SQL: lista de campos separados por comas. Por ejemplo: "securityCenterProperties.resource_project,securityCenterProperties.project".

Los siguientes campos son compatibles cuando no se establece compareDuration:

  • securityCenterProperties.resource_project
  • securityCenterProperties.resource_type
  • securityCenterProperties.resource_parent

Los siguientes campos son compatibles cuando se establece compareDuration:

  • securityCenterProperties.resource_type
compareDuration

string (Duration format)

Cuando se establece compareDuration, se actualiza la propiedad "state" del recurso para indicar si se agregó, quitó o permaneció presente durante el período de compareDuration que precede a readTime. Es el tiempo entre (readTime - compareDuration) y readTime.

El valor del estado se obtiene en función de la presencia del activo en los dos momentos. Los cambios de estado intermedios entre los dos momentos no afectan el resultado. Por ejemplo, los resultados no se ven afectados si se quita el recurso y se vuelve a crear.

Valores posibles de "state" cuando se especifica compareDuration:

  • "ADDED": Indica que el activo no estaba presente antes de compareDuration, pero sí en reference_time.
  • "REMOVED": Indica que el recurso estaba presente al comienzo de compareDuration, pero no en reference_time.
  • "ACTIVE": Indica que el activo estuvo presente al comienzo y al final del período definido por compareDuration y reference_time.

Este campo se ignora si state no es un campo en groupBy.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

readTime

string (Timestamp format)

Es la hora que se usa como punto de referencia cuando se filtran los recursos. El filtro se limita a los activos que existen en el momento proporcionado y sus valores son los de ese momento específico. Si no se incluye este campo, se usará la versión de NOW de la API de forma predeterminada.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

pageToken

string

El valor que muestra el último GroupAssetsResponse indica que esta es una continuación de una llamada assets.group anterior y que el sistema debe mostrar la siguiente página de datos.

pageSize

integer

Es la cantidad máxima de resultados que se mostrarán en una sola respuesta. El valor predeterminado es 10, el mínimo es 1 y el máximo es 1, 000.

Cuerpo de la respuesta

Mensaje de respuesta para agrupar por recursos.

Si se ejecuta correctamente, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON
{
  "groupByResults": [
    {
      object (GroupResult)
    }
  ],
  "readTime": string,
  "nextPageToken": string
}
Campos
groupByResults[]

object (GroupResult)

Agrupar resultados Existe un elemento para cada combinación única existente de propiedad/valores. El elemento contiene un recuento de la cantidad de veces que aparecen esos valores o propiedades específicos.

readTime

string (Timestamp format)

Es el tiempo que se usa para ejecutar la solicitud groupBy.

Usa RFC 3339, en el que el resultado generado siempre se normalizará en Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan compensaciones distintas de "Z". Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

nextPageToken

string

Es un token para recuperar la página siguiente de resultados o dejarlo vacío si no hay más resultados.

Permisos de autorización

Requiere el siguiente alcance de OAuth:

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

Para obtener más información, consulta Authentication Overview.