Puedes consultar el historial de creación, actualización y eliminación de tus recursos de proyectos u organizaciones de los últimos 35 días. Google Cloud Los recursos que no han cambiado en los últimos 35 días muestran su estado más reciente.
Antes de empezar
Habilita la API Cloud Asset Inventory en el proyecto desde el que ejecutas los comandos de Cloud Asset Inventory.
Asegúrate de que tu cuenta tiene el rol correcto para llamar a la API Cloud Asset Inventory. Para ver los permisos individuales de cada tipo de llamada, consulta la sección Permisos.
Limitaciones
Solo puedes consultar el historial de recursos a nivel de organización y de proyecto. No se admiten carpetas.
Obtener el historial de tus recursos
Consola
Para consultar el historial de los recursos almacenados en Google Cloud, sigue estos pasos.
-
Ve a la página Inventario de recursos de la consola de Google Cloud .
- Cambia al proyecto, la carpeta o la organización que quieras buscar.
- Haz clic en la pestaña Recurso.
- En el panel Filtrar resultados, selecciona un tipo de recurso o una ubicación para filtrar los resultados.
- Haz clic en un recurso del panel de resultados.
- Haz clic en la pestaña Historial de cambios.
- Seleccione una Hora de inicio y una Hora de finalización para el informe.
- Usa los cuadros de lista Selecciona un registro para la comparación para mostrar una diferencia entre los registros de las fechas seleccionadas.
Después de realizar una búsqueda, los recursos que coincidan con la consulta se mostrarán en la tabla Resultados. Haga doble clic en la consulta para editarla o use el panel Filtrar resultados para restringir los resultados de 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, haga clic en Descargar CSV.
gcloud
gcloud asset get-history \ --SCOPE \ --asset-names=ASSET_NAME_1,ASSET_NAME_2,... \ --content-type=CONTENT_TYPE \ --relationship-types=RELATIONSHIP_TYPE_1,RELATIONSHIP_TYPE_2,... \ --start-time="START_TIME" \ --end-time="END_TIME"
Proporciona los siguientes valores:
-
SCOPE
: usa uno de los siguientes valores:-
project=PROJECT_ID
, dondePROJECT_ID
es el ID del proyecto que tiene el recurso que quieres recuperar. -
organization=ORGANIZATION_ID
, dondeORGANIZATION_ID
es el ID de la organización que tiene el recurso que quieres recuperar.Cómo encontrar el ID de una Google Cloud organización
Google Cloud consola
Para encontrar el ID de una organización de Google Cloud , sigue estos pasos:
-
Ve a la Google Cloud consola.
- En la barra de menús, haz clic en el cuadro de lista del selector.
- Selecciona tu organización en el cuadro de lista.
- Haz clic en la pestaña Todas. El ID de la organización se muestra junto al nombre de la organización.
CLI de gcloud
Puedes obtener el ID de una Google Cloud organización con el siguiente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_NAME_#
: lista separada por comas de nombres completos de recursos.CONTENT_TYPE
: El tipo de contenido de los metadatos que quieras obtener. Si no se especifica--content-type
, solo se devuelve información básica, como los nombres de los recursos, la última vez que se actualizaron y los proyectos, las carpetas y las organizaciones a los que pertenecen.-
RELATIONSHIP_TYPE_#
: opcional. Se requiere acceso al nivel Premium o Enterprise de Security Command Center o a Gemini Cloud Assist. Lista separada por comas de tipos de relaciones de recursos que quieras obtener. Para que funcione, debes asignar el valorRELATIONSHIP
aCONTENT_TYPE
. -
START_TIME
: el inicio del periodo, en formato de fecha y hora de gcloud topic. El valor no debe ser de hace más de 35 días. -
END_TIME
: opcional. El punto final del periodo, con el formato de fecha y hora de gcloud topic. El valor no debe ser de hace más de 35 días. Si no se especifica--end-time
, se le asigna la hora actual.
Consulta la referencia de la CLI de gcloud para ver todas las opciones.
Ejemplo
Ejecuta el siguiente comando para obtener los metadatos del historial de la instancia de my-instance
Compute Engine del proyecto my-project
entre el 30 de enero y el 5 de febrero del 2024.resource
La instancia tiene las siguientes propiedades:
- Nombre de la instancia:
my-instance
- Proyecto:
my-project
- Ubicación:
us-central1-a
gcloud asset get-history \ --project=my-project \ --asset-names=//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance \ --content-type=resource \ --start-time="2024-01-30" \ --end-time="2024-02-05"
Respuesta de ejemplo
--- asset: ancestors: - projects/000000000000 - folders/000000000000 - organizations/000000000000 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance resource: data: LATEST_ASSET_METADATA discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: us-central1-a parent: //cloudresourcemanager.googleapis.com/projects/000000000000 version: v1 updateTime: '2024-02-05T16:00:25.259186Z' window: endTime: '2024-02-05T16:00:25.259186Z' startTime: '2024-02-03T16:00:28.854779Z' --- asset: ancestors: - projects/000000000000 - folders/000000000000 - organizations/000000000000 assetType: compute.googleapis.com/Instance name: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance resource: data: EARLIEST_ASSET_METADATA discoveryDocumentUri: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest discoveryName: Instance location: us-central1-a parent: //cloudresourcemanager.googleapis.com/projects/000000000000 version: v1 updateTime: '2024-02-03T16:00:28.854779Z' window: endTime: '2024-02-03T16:00:28.854779Z' startTime: '2024-01-30T08:00:22.930462Z'
REST
Método HTTP y URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:batchGetAssetsHistory
Cuerpo JSON de la solicitud:
{ "assetNames": [ "ASSET_NAME_1", "ASSET_NAME_2", "..." ], "contentType": "CONTENT_TYPE", "relationshipTypes": [ "RELATIONSHIP_TYPE_1", "RELATIONSHIP_TYPE_2", "..." ], "readTimeWindow": { "startTime": "START_TIME", "endTime": "END_TIME" } }
Proporciona los siguientes valores:
-
SCOPE_PATH
: usa uno de los siguientes valores:Los valores permitidos son:
-
projects/PROJECT_ID
, dondePROJECT_ID
es el ID del proyecto que tiene el recurso que quieres recuperar. -
projects/PROJECT_NUMBER
, dondePROJECT_NUMBER
es el número del proyecto que tiene el recurso que quieres recuperar.Cómo encontrar el Google Cloud número de proyecto
Google Cloud consola
Para encontrar un número de proyecto de Google Cloud , sigue estos pasos:
-
Ve a la página Bienvenida de la Google Cloud consola.
- En la barra de menús, haz clic en el cuadro de lista del selector.
-
Selecciona tu organización en el cuadro de lista y, a continuación, busca el nombre de tu proyecto. El nombre, el número y el ID del proyecto se muestran cerca del encabezado Bienvenido.
Se muestran hasta 4000 recursos. Si no ves el proyecto que buscas, ve a la página Gestionar recursos y filtra la lista por el nombre de ese proyecto.
CLI de gcloud
Puedes obtener un Google Cloud número de proyecto con el siguiente comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
organizations/ORGANIZATION_ID
, dondeORGANIZATION_ID
es el ID de la organización que tiene el recurso que quieres recuperar.Cómo encontrar el ID de una Google Cloud organización
Google Cloud consola
Para encontrar el ID de una organización de Google Cloud , sigue estos pasos:
-
Ve a la Google Cloud consola.
- En la barra de menús, haz clic en el cuadro de lista del selector.
- Selecciona tu organización en el cuadro de lista.
- Haz clic en la pestaña Todas. El ID de la organización se muestra junto al nombre de la organización.
CLI de gcloud
Puedes obtener el ID de una Google Cloud organización con el siguiente comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
ASSET_NAME_#
: array de nombres completos de recursos.CONTENT_TYPE
: El tipo de contenido de los metadatos que quieras obtener. Si no se especificacontentType
, solo se devuelve información básica, como los nombres de los recursos, la última vez que se actualizaron y los proyectos, las carpetas y las organizaciones a los que pertenecen.-
RELATIONSHIP_TYPE_#
: opcional. Se requiere acceso al nivel Premium o Enterprise de Security Command Center o a Gemini Cloud Assist. Lista separada por comas de tipos de relaciones de recursos que quieras obtener. Para que funcione, debes asignar el valorRELATIONSHIP
aCONTENT_TYPE
. -
START_TIME
: el inicio del intervalo de tiempo, en formato RFC 3339. El valor no debe ser de hace más de 35 días. -
END_TIME
: opcional. El punto final del periodo, en formato RFC 3339. El valor no debe ser de hace más de 35 días. Si no se especificaendTime
, se le asigna la hora actual.
Consulta la referencia de REST para ver todas las opciones.
Ejemplos de comandos
Ejecuta uno de los siguientes comandos para obtener el resource
historial de la instancia de my-instance
Compute Engine del proyecto my-project
entre el 30 de enero y el 5 de febrero del 2024. La instancia tiene las siguientes propiedades:
- Nombre de la instancia:
my-instance
- Proyecto:
my-project
- Ubicación:
us-central1-a
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 '{ "assetNames": ["//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance"], "contentType": "RESOURCE", "readTimeWindow": { "startTime": "2024-01-30T00:00:00Z", "endTime": "2024-02-05T00:00:00Z" } }' \ https://cloudasset.googleapis.com/v1/projects/my-project:batchGetAssetsHistory
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "X-HTTP-Method-Override" = "GET"; "Authorization" = "Bearer $cred" } $body = @" { "assetNames": ["//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance"], "contentType": "RESOURCE", "readTimeWindow": { "startTime": "2024-01-30T00:00:00Z", "endTime": "2024-02-05T00:00:00Z" } } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://cloudasset.googleapis.com/v1/projects/my-project:batchGetAssetsHistory" | Select-Object -Expand Content
Respuesta de ejemplo
{ "assets": [ { "window": { "startTime": "2024-02-03T16:00:28.854779Z", "endTime": "2024-02-05T16:00:25.259186Z" }, "asset": { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance", "assetType": "compute.googleapis.com/Instance", "resource": { "version": "v1", "discoveryDocumentUri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest", "discoveryName": "Instance", "parent": "//cloudresourcemanager.googleapis.com/projects/000000000000", "data": { LATEST_ASSET_METADATA }, "location": "us-central1-a" }, "ancestors": [ "projects/000000000000", "folders/000000000000", "organizations/000000000000" ], "updateTime": "2024-02-05T16:00:25.259186Z" } }, { "window": { "startTime": "2024-01-30T08:00:22.930462Z", "endTime": "2024-02-03T16:00:28.854779Z" }, "asset": { "name": "//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance", "assetType": "compute.googleapis.com/Instance", "resource": { "version": "v1", "discoveryDocumentUri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest", "discoveryName": "Instance", "parent": "//cloudresourcemanager.googleapis.com/projects/000000000000", "data": { EARLIEST_ASSET_METADATA }, "location": "us-central1-a" }, "ancestors": [ "projects/000000000000", "folders/000000000000", "organizations/000000000000" ], "updateTime": "2024-02-03T16:00:28.854779Z" } } ] }
C#
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Go
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Java
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Node.js
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
PHP
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Python
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.
Ruby
Para saber cómo instalar y usar la biblioteca de cliente de Inventario de Recursos de Cloud, consulta Bibliotecas de cliente de Inventario de Recursos de Cloud.
Para autenticarte en Inventario de Recursos de Cloud, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación en un entorno de desarrollo local.