Puedes buscar recursos en un proyecto, una carpeta o una organización, y filtrarlos los resultados devueltos con una consulta.
Antes de comenzar
Habilita la API de Cloud Asset Inventory en el proyecto en el que ejecutas los comandos de Cloud Asset Inventory de la imagen de la que se originó.
Asegúrate de que tu cuenta tenga el rol correcto para llamar a la API de Cloud Asset Inventory. Para obtener información sobre los permisos individuales de cada tipo de llamada, consulta Permisos.
Crear una consulta
Antes de crear una consulta, puede ser útil comenzar con una solicitud de búsqueda que no especifique una consulta. Usa los campos y valores de la respuesta completa para crear una consulta con la sintaxis de la búsqueda y definirla mejor hasta que se muestren los resultados que deseas.
Los campos que se pueden usar en una consulta se detallan en la documentación de referencia de searchAllResources.
No todos los recursos se pueden buscar. Consulta Tipos de recursos de los nombres de recursos y comprobar si están disponibles para las APIs de búsqueda.
Cómo buscar tus recursos
Console
Para buscar metadatos de recursos, completa los siguientes pasos.
-
Ve a la página Asset Inventory del Consola de Google Cloud
- Cambia al proyecto, la carpeta o la organización que deseas buscar.
- Haz clic en la pestaña Recurso.
-
Para buscar recursos, ingresa una consulta en el campo Filtro. Consulta Sintaxis de las consultas de búsqueda para aprender a escribir una consulta de búsqueda.
Para facilitar la creación de consultas, puedes hacer clic en Filtro. para mostrar y agregar los campos disponibles que se pueden buscar a tu para cada búsqueda.
Después de realizar una búsqueda, los recursos que coinciden con la consulta se enumeran en la tabla Resultados. Haz doble clic en la búsqueda para editarla o usa el panel Filtrar resultados para restringir los resultados de la búsqueda según criterios específicos.
Para ver la consulta como un comando de Google Cloud CLI, haz clic en Ver consulta.
Para exportar los resultados, haz clic en Descargar CSV.
gcloud
gcloud asset search-all-resources \ --scope=SCOPE_PATH \ --query="QUERY" \ --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \ --order-by="ORDER_BY" \ --read-mask="READ_MASK"
Ingresa los siguientes valores:
-
SCOPE_PATH
: Usa uno de los siguientes valores:Los valores permitidos son los siguientes:
-
projects/PROJECT_ID
, dondePROJECT_ID
es el ID del proyecto que tiene los recursos que deseas buscar. -
projects/PROJECT_NUMBER
, dondePROJECT_NUMBER
es el número del proyecto que tiene los recursos que deseas buscar.Cómo encontrar un número de proyecto de Google Cloud
Consola de Google Cloud
Para encontrar un número de proyecto de Google Cloud, completa los siguientes pasos:
-
Ve a la página Te damos la bienvenida en la consola de Google Cloud.
- Haz clic en el cuadro de lista del selector en la barra de menú.
-
Selecciona tu organización en el cuadro de lista y, luego, busca el nombre de tu proyecto. El nombre, el número y el ID del proyecto se muestran cerca del encabezado Te damos la bienvenida.
Se muestran hasta 4,000 recursos. Si no ves el proyecto que buscas, ve a la página Administrar recursos y filtra la lista con el nombre de ese proyecto.
gcloud CLI
Puedes recuperar un número de proyecto de Google Cloud con el siguiente comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID
, dondeFOLDER_ID
es la Es el ID de la carpeta en la que se encuentran los recursos que deseas buscar.Cómo encontrar el ID de una carpeta de Google Cloud
Consola de Google Cloud
Para encontrar el ID de una carpeta de Google Cloud, sigue estos pasos:
-
Ve a la consola de Google Cloud.
- Haz clic en el cuadro de lista para cambiar en la barra de menú.
- Selecciona tu organización en el cuadro de lista.
- Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.
gcloud CLI
Puedes recuperar el ID de una carpeta de Google Cloud que se encuentra a nivel de la organización con el siguiente comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Donde TOP_LEVEL_FOLDER_NAME es una coincidencia de cadena parcial o completa para el nombre de la carpeta. Quita la marca
--format
para ver más información sobre las carpetas encontradas.El comando anterior no muestra los IDs de las subcarpetas dentro de las carpetas. Para ello, ejecuta el siguiente comando con el ID de una carpeta de nivel superior:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID
, en el queORGANIZATION_ID
es el ID de la organización que tiene los recursos que deseas buscar.Cómo encontrar el ID de una organización de Google Cloud
Consola de Google Cloud
Para encontrar el ID de una organización de Google Cloud, completa los siguientes pasos:
-
Ve a la consola de Google Cloud.
- Haz clic en el cuadro de lista del selector en la barra de menú.
- Selecciona tu organización en el cuadro de lista.
- Haz clic en la pestaña Todos. El ID de la organización se muestra junto a su nombre.
gcloud CLI
Puedes recuperar el ID de una organización de Google Cloud con el siguiente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
-
QUERY
: Opcional La expresión de la consulta. Si no se especifica o vacío, se buscan todos los recursos en el alcance especificado. Para obtener información sobre cómo escribir una consulta de búsqueda, consulta Sintaxis de búsqueda. ASSET_TYPE_#
: Opcional Una lista separada por comas de tipo de recursos que se pueden buscar. Se admiten expresiones regulares compatibles con RE2. Si la expresión regular no coincide con ningún tipo de activo compatible, se muestra un errorINVALID_ARGUMENT
. Cuándo No se especifica--asset-types
, se muestran todos los tipos de recursos.-
ORDER_BY
: Opcional Es una lista de campos separados por comas que especifican el orden de clasificación de los resultados. El orden predeterminado es ascendente. AgregaDESC
después del nombre del campo para indicar el orden descendente. Consulta la documentación de referencia sobre qué campos se pueden ordenar. READ_MASK
: Opcional Es una lista de campos separados por comas que especifican qué campos se deben mostrar en los resultados. Consulta los campos que se muestran de forma predeterminada y otras condiciones que debes tener en cuenta cuando especificando una máscara de lectura.
Puedes usar --format
y
--flatten
para dar formato al
Resultado de gcloud CLI.
Consulta la referencia de la CLI de gcloud para ver todas las opciones.
Ejemplo
Ejecuta el siguiente comando para obtener una lista de todas las instancias de Compute Engine en el
proyecto my-project
con la palabra instance
seguida de una 1
en su nombre de recurso completo. Los resultados están en orden descendente por nombre y, debido a la máscara de lectura, solo se muestran los campos name
y location
.
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="name:instance 1" \ --asset-types=compute.googleapis.com/Instance \ --order-by="name DESC" \ --read-mask="name,location"
Respuesta de ejemplo
--- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1 --- location: us-central1-a name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:searchAllResources
Cuerpo JSON de la solicitud:
{ "query": "QUERY", "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "orderBy": "ORDER_BY", "pageSize": "PAGE_SIZE", "pageToken": "PAGE_TOKEN", "readMask": "READ_MASK" }
Ingresa los siguientes valores:
-
SCOPE_PATH
: Usa uno de los siguientes valores:Los valores permitidos son los siguientes:
-
projects/PROJECT_ID
, dondePROJECT_ID
es el ID del proyecto que tiene los recursos que deseas buscar. -
projects/PROJECT_NUMBER
, dondePROJECT_NUMBER
es el número del proyecto que tiene los recursos que deseas buscar.Cómo encontrar un número de proyecto de Google Cloud
Consola de Google Cloud
Para encontrar un número de proyecto de Google Cloud, completa los siguientes pasos:
-
Ve a la página Bienvenida en la consola de Google Cloud.
- Haz clic en el cuadro de lista del selector en la barra de menú.
-
Selecciona tu organización en el cuadro de lista y, luego, busca el nombre de tu proyecto. El nombre, el número y el ID del proyecto se muestran cerca del encabezado Te damos la bienvenida.
Se muestran hasta 4,000 recursos. Si no encuentras el proyecto que buscas, ve a en la página Administrar recursos filtrar la lista con el nombre de ese proyecto.
gcloud CLI
Puedes recuperar un número de proyecto de Google Cloud con el siguiente comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID
, dondeFOLDER_ID
es la Es el ID de la carpeta en la que se encuentran los recursos que deseas buscar.Cómo encontrar el ID de una carpeta de Google Cloud
Consola de Google Cloud
Para encontrar el ID de una carpeta de Google Cloud, sigue estos pasos:
-
Ve a la consola de Google Cloud.
- Haz clic en el cuadro de lista de selector en la barra de menú.
- Selecciona tu organización en el cuadro de lista.
- Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.
gcloud CLI
Puedes recuperar el ID de una carpeta de Google Cloud que se encuentra a nivel de la organización con el siguiente comando:
gcloud resource-manager folders list \ --organization=$(gcloud organizations describe ORGANIZATION_NAME \ --format="value(name.segment(1))") \ --filter='"DISPLAY_NAME":"TOP_LEVEL_FOLDER_NAME"' \ --format="value(ID)"
Donde TOP_LEVEL_FOLDER_NAME es una coincidencia de cadena parcial o completa para el nombre de la carpeta. Quita la marca
--format
para ver más información sobre las carpetas encontradas.El comando anterior no muestra los IDs de las subcarpetas dentro de las carpetas. Para ello, ejecuta el siguiente comando con el ID de una carpeta de nivel superior:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID
, en el queORGANIZATION_ID
es el ID de la organización que tiene los recursos que deseas buscar.Cómo encontrar el ID de una organización de Google Cloud
Consola de Google Cloud
Para encontrar el ID de una organización de Google Cloud, completa los siguientes pasos:
-
Ve a la consola de Google Cloud.
- Haz clic en el cuadro de lista del selector en la barra de menú.
- Selecciona tu organización en el cuadro de lista.
- Haz clic en la pestaña Todos. El ID de la organización se muestra junto a su nombre.
gcloud CLI
Puedes recuperar el ID de una organización de Google Cloud con el siguiente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
-
QUERY
: Opcional La expresión de la consulta. Si no se especifica o vacío, se buscan todos los recursos en el alcance especificado. Para aprender a escribir una búsqueda consulta Sintaxis de consultas de búsqueda. ASSET_TYPE_#
: Opcional Un array de tipos de recursos que se pueden buscar. Se admiten expresiones regulares compatibles con RE2. Si la expresión regular no coincide con ningún tipo de activo compatible, se muestra un errorINVALID_ARGUMENT
. Cuando no se especificaassetTypes
, se muestran todos los tipos de activos.-
ORDER_BY
: Opcional Una lista de campos separados por comas especificando el orden de clasificación de los resultados. El orden predeterminado es ascendente. AgregaDESC
después del nombre del campo para indicar un orden descendente. Consulta la documentación de referencia para saber qué campos se pueden ordenar. -
PAGE_SIZE
: Opcional Es la cantidad de resultados que se mostrarán por página. La cantidad máxima es 500. Si el valor se establece en0
o en un valor negativo, aparecerá una se selecciona el valor predeterminado correspondiente. Se muestra unnextPageToken
para recuperar resultados posteriores. -
PAGE_TOKEN
: Opcional Las respuestas de solicitudes largas se separan en varias páginas. Cuando no se especificapageToken
, se muestra la primera página. Para llamar a las páginas posteriores, usa elnextPageToken
de la respuesta anterior como el valor depageToken
. READ_MASK
: Opcional R una lista de campos separados por comas que especifican los campos que se deben mostrar en los resultados. Consulta los campos que se muestran de forma predeterminada y otras condiciones que debes tener en cuenta cuando especificando una máscara de lectura.
Consulta la referencia de REST para obtener opciones de estado.
Ejemplos de comandos
Ejecuta uno de los siguientes comandos para obtener una lista de todas las instancias de Compute Engine en el
proyecto my-project
con la palabra instance
seguida de una 1
en su nombre de recurso completo. Los resultados se muestran en orden descendente según el nombre y solo se muestran los campos name
y location
.
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "query": "name:instance 1", "assetTypes": ["compute.googleapis.com/Instance"], "orderBy": "name DESC", "readMask": "name,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Respuesta de ejemplo
{ "results": [ { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-2-1", "location": "us-central1-a" }, { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/instance-1", "location": "us-central1-a" } ] }
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Asset Inventory, consulta Bibliotecas cliente de Cloud Asset Inventory.
Para autenticarte en Cloud Asset Inventory, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ejemplos de búsqueda adicionales
En las siguientes muestras de código, se muestran consultas de búsqueda específicas para gcloud y REST para ayudarte a crear tus propias búsquedas.
Todos los recursos de un proyecto
En el siguiente ejemplo, se muestra cómo buscar todos los recursos en my-project
en un proyecto final.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --format="table(assetType.basename(), name.basename(), name.scope(projects).segment(0):label=PROJECT_ID, labels)"
REST
Método HTTP y URL:
GET https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine por descripción
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en el proyecto my-project
con el nombre exacto instance-prod
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="description=instance-prod" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "description=instance-prod", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Para buscar instancias que tengan instance-prod
en su nombre (como instance-prod-1
y instance-prod-2
) en lugar de una coincidencia exacta, reemplaza =instance-prod
por :instance-prod
.
Instancias de Compute Engine por etiqueta
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en la
Proyecto my-project
con una etiqueta llamada env
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="labels.env:*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, labels)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "labels.env:*", "readMask": "name,assetType,labels" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine por TagKey
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en la
my-project
proyecto que vinculó directamente las etiquetas con un
TagKey
namespacedName
que contiene env
.
Para buscar por TagKeys efectivos, reemplaza tagKeys
por
effectiveTagKeys
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagKeys:env" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagKeys:env", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine por TagValue
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en la
my-project
proyecto que tiene etiquetas directamente adjuntas en las que el
TagValue
namespacedName
contiene prod
o sea
, y el nombre de la instancia no contiene instance1
.
Para buscar por TagValues efectivos, reemplaza tagValues
por effectiveTagValues
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="tagValues:(prod OR sea) (NOT name:instance1)" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, tags)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "tagValues:(prod OR sea) (NOT name:instance1)", "readMask": "name,assetType,tags" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine creadas después de una hora específica
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en el proyecto my-project
que se crearon después del 31 de diciembre de 2023.
Para obtener más información sobre las comparaciones de fecha y hora, consulta Comparación numérica y de marca de tiempo.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="createTime>2023-31-12" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "createTime>2023-31-12", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine ubicadas en EE.UU.
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine en la
my-project
que se encuentran en EE.UU.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="location:us-*" \ --asset-types=compute.googleapis.com/Instance \ --format="table(name, assetType, location)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "location:us-*", "readMask": "name,assetType,location" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Instancias de Compute Engine que se ejecutan
En el siguiente ejemplo, se muestra cómo buscar instancias de Compute Engine que se ejecutan en el proyecto my-project
.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="state=RUNNING" \ --asset-types=compute.googleapis.com/Instance \ --read-mask="name,assetType,location,versionedResources" \ --format="table(name, assetType, location, versionedResources)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetTypes": "compute.googleapis.com/Instance", "pageSize": 1, "query": "state=RUNNING", "readMask": "name,assetType,location,versionedResources" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
Para buscar instancias de Compute Engine que no se estén ejecutando, reemplaza
state=RUNNING
por NOT state:running
.
Recursos relacionados de Google Cloud
Las consultas de relaciones solo están disponibles para los suscriptores del nivel Premium y Enterprise de Security Command Center.
En el siguiente ejemplo, se muestra cómo buscar
relacionados
del proyecto my-project
para solicitudes
tipos de relación. Por ejemplo:
buscar todas las instancias de Compute Engine que forman parte del
grupos de instancias que tienen instance-group
en
los nombres completos de los recursos.
gcloud
gcloud asset search-all-resources \ --scope=projects/my-project \ --query="relationships:instance-group" \ --format="table(name, assetType, relationships)"
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
Cuerpo JSON de la solicitud:
{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }
Ejemplos de comandos
curl (Linux, macOS o Cloud Shell)
curl -X POST \ -H "X-HTTP-Method-Override: GET" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d '{ "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" }' \ https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "pageSize": 1, "query": "relationships:instance-group", "readMask": "name,assetType,relationships" } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:searchAllResources" | Select-Object -Expand Content
También puedes especificar el tipo de relación que quieres buscar. Por ejemplo, para buscar el tipo de relación INSTANCE_TO_INSTANCEGROUP
, usa la consulta relationships.INSTANCE_TO_INSTANCEGROUP
. Para buscar ese tipo de relación con un nombre de recurso completo que contenga instance-group
, usa la consulta relationships.INSTANCE_TO_INSTANCEGROUP:instance-group
.