Mostrar recursos

En esta página, se muestra cómo usar el servicio de lista de activos de Cloud Asset Inventory. Puedes usar la API de Cloud Asset Inventory para ver una lista paginada de los elementos en una marca de tiempo determinada.

Antes de comenzar

  1. Habilita la API de Cloud Asset antes de usar Google Cloud CLI para acceder Cloud Asset Inventory. Ten en cuenta que solo es necesario habilitar la API en el proyecto en el que ejecutas los comandos de la API de Cloud Asset.

    Habilita la API de Cloud Asset Inventory

  2. Instala Google Cloud CLI en tu cliente local.

  3. Asegúrate de que tu cuenta tenga uno de los siguientes roles en tu proyecto o de la organización en la que vas a hacer una lista de los recursos.

    • roles/cloudasset.viewer

    • roles/cloudasset.owner

Configura una cuenta

Para llamar a la API de Cloud Asset, tu cuenta debe tener el permiso correspondiente en el recurso raíz (superior), que es una organización o un proyecto que contiene los recursos que deseas enumerar. A continuación, se incluyen los permisos necesarios para cada ContentType en la solicitud:

Tipo de contenido Permiso
nombre de gcloud Nombre de REST
access-policy ACCESS_POLICY cloudasset.assets.listAccessPolicy
content-type-unspecified CONTENT_TYPE_UNSPECIFIED cloudasset.assets.listResource
iam-policy IAM_POLICY cloudasset.assets.listIamPolicy
org-policy ORG_POLICY cloudasset.assets.listOrgPolicy
os-inventory OS_INVENTORY cloudasset.assets.listOSInventories
relationship RELATIONSHIP cloudasset.assets.listResource
resource RESOURCE cloudasset.assets.listResource

Si a tu cuenta se le otorgó la función de visualizador de recursos de Cloud (roles/cloudasset.viewer), la función de propietario de Cloud Asset (roles/cloudasset.owner) o la función básica de propietario (roles/owner) en recurso raíz, ya cuenta con los permisos necesarios para llamar a la API de Cloud Asset. De lo contrario, sigue los pasos de la página Configura permisos.

Enumerar recursos

Para enumerar los recursos y sus relaciones en un proyecto, una carpeta o una organización en en un momento determinado con la API de Cloud Asset, realiza una de las siguientes solicitudes.

Enumerar los recursos de un proyecto, una carpeta o una organización, incluidos todos los metadatos de recursos

gcloud

Proyectos

gcloud asset list \
    --project=PROJECT_ID \
    --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • PROJECT_ID: Es el ID del proyecto en el los recursos que quieres enumerar.

  • ASSET_TYPE: Opcional Una lista separada por comas de tipos de recursos que se pueden buscar. Las expresiones regulares compatibles con RE2 son las siguientes: no es compatible. Si la expresión regular no coincide con ninguna tipo de recurso, se muestra un error INVALID_ARGUMENT.

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser el hora actual o de no más de 35 días en el pasado. Cuando no se toma una instantánea en ese momento. Para obtener información sobre consulta gcloud topic datetimes.

Quita la marca --content-type para excluir los metadatos de recursos.

Carpetas

Enumera los recursos de una carpeta, incluidos todos los metadatos del recurso:

gcloud asset list \
    --folder=FOLDER_ID \
    --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • FOLDER_ID: El ID de la carpeta cuyo los recursos que quieres enumerar.

    Cómo encontrar un ID de carpeta de Google Cloud

    Console

    Para encontrar un ID de carpeta de Google Cloud, completa los siguientes pasos:

    1. Ve a la consola de Google Cloud.

      Ir a la consola de Google Cloud

    2. Haz clic en el cuadro del selector en la barra de menú.
    3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
    4. Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.

    gcloud CLI

    Puedes recuperar un ID de 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 puede ser una coincidencia de cadena completa o parcial. Quita el --format para ver más información sobre las carpetas encontradas.

    Para obtener el ID de una carpeta dentro de otra, enumera las subcarpetas:

    gcloud resource-manager folders list --folder=FOLDER_ID

  • ASSET_TYPE: Opcional Una lista separada por comas de tipos de recursos que se pueden buscar. Las expresiones regulares son no es compatible. Si la expresión regular no coincide con ninguna tipo de recurso, se muestra un error INVALID_ARGUMENT.

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser el hora actual o de no más de 35 días en el pasado. Si no se proporciona, se toma una instantánea a la hora actual. Para obtener información sobre consulta gcloud topic datetimes.

Quita la marca --content-type para excluir los metadatos de recursos.

Organizaciones

Enumera los recursos de una organización, incluidos todos los metadatos del recurso:

gcloud asset list \
    --organization=ORGANIZATION_ID \
    --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • ORGANIZATION_ID: Es el ID de la organización cuyos recursos deseas enumerar.

    Cómo encontrar un ID de organización de Google Cloud

    Console

    Para encontrar un ID de organización de Google Cloud, completa los siguientes pasos:

    1. Ve a la consola de Google Cloud.

      Ir a la consola de Google Cloud

    2. Haz clic en el cuadro de selector en la barra de menú.
    3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
    4. Haz clic en la pestaña Todos. El ID de la organización se muestra junto al nombre de la organización.

    gcloud CLI

    Puedes recuperar un ID de organización de Google Cloud con el siguiente comando:

    gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

  • ASSET_TYPE: Opcional Una lista separada por comas de tipos de recursos que se pueden buscar. Las expresiones regulares son no es compatible. Si la expresión regular no coincide con ninguna tipo de recurso, se muestra un error INVALID_ARGUMENT.

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser el hora actual o de no más de 35 días en el pasado. Cuando no se toma una instantánea en ese momento. Para obtener información sobre los formatos de hora, consulta gcloud topic datetimes.

Quita la marca --content-type para excluir los metadatos de recursos.

REST

curl -X POST \
     -H "X-HTTP-Method-Override: GET" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "RESOURCE",
          "assetTypes": [
            "ASSET_TYPE_1",
            "ASSET_TYPE_2",
            "..."
          ],
          "readTime": "SNAPSHOT_TIME",
          "pageToken": "PAGE_TOKEN"
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE/assets

Ingresa los siguientes valores:

  • ASSET_TYPE: Opcional Un array de de recursos que se pueden buscar. Las expresiones regulares son no es compatible. Si la expresión regular no coincide con ningún recurso admitido , se muestra un error INVALID_ARGUMENT.

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos en formato RFC 3339. El valor debe ser la hora actual o una hora no superior a 35 días en la en el pasado. Si no se proporciona, se toma una instantánea en el momento actual.

  • PAGE_TOKEN: Opcional Las respuestas a solicitudes largas son separadas en varias páginas. Este par clave-valor no es necesario para la primera página, sin embargo, se puede llamar a las páginas siguientes usando el parámetro esta es nextPageToken.

  • SCOPE: Un permiso puede ser un proyecto, una carpeta o un organización.

    Los valores permitidos son los siguientes:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Cómo encontrar un número de proyecto de Google Cloud

      Console

      Para encontrar un número de proyecto de Google Cloud, completa los siguientes pasos:

      1. Ve a la página Panel en la consola de Google Cloud.

        Ir al panel

      2. Haz clic en el cuadro de selector en la barra de menú.
      3. Selecciona tu organización en el cuadro Seleccionar una opción y, luego, busca tu el nombre del proyecto.
      4. Haz clic en el nombre del proyecto para cambiar a ese proyecto. El número de proyecto se muestra Tarjeta Información del 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

      Cómo encontrar un ID de carpeta de Google Cloud

      Console

      Para encontrar un ID de carpeta de Google Cloud, completa los siguientes pasos:

      1. Ve a la consola de Google Cloud.

        Ir a la consola de Google Cloud

      2. Haz clic en el cuadro del selector en la barra de menú.
      3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
      4. Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.

      gcloud CLI

      Puedes recuperar un ID de 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 puede ser una coincidencia de cadena completa o parcial. Quita el --format para ver más información sobre las carpetas encontradas.

      Para obtener el ID de una carpeta dentro de otra carpeta, enumera las subcarpetas:

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Cómo encontrar un ID de organización de Google Cloud

      Console

      Para encontrar un ID de organización de Google Cloud, completa los siguientes pasos:

      1. Ve a la consola de Google Cloud.

        Ir a la consola de Google Cloud

      2. Haz clic en el cuadro del selector en la barra de menú.
      3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
      4. Haz clic en la pestaña Todos. El ID de la organización se muestra junto al nombre de la organización.

      gcloud CLI

      Puedes recuperar un ID de organización de Google Cloud con el siguiente comando:

      gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"

Quita el par clave-valor contentType para excluir los metadatos de recursos.

Enumerar relaciones específicas en un proyecto, una carpeta o una organización

gcloud

Proyectos

gcloud asset list \
    --project=PROJECT_ID \
    --content-type=relationship \
    --relationship-types=INSTANCE_TO_INSTANCEGROUP \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • PROJECT_ID: Es el ID del proyecto cuyos activos deseas enumerar.

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser el hora actual o de no más de 35 días en el pasado. Cuando no se toma una instantánea en ese momento. Para obtener información sobre consulta gcloud topic datetimes.

Quita la marca --relationship-types para ver todas las relaciones de una en un proyecto final.

Carpetas

gcloud asset list \
    --folder=FOLDER_ID \
    --content-type=relationship \
    --relationship-types=INSTANCE_TO_INSTANCEGROUP \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • FOLDER_ID: El ID de la carpeta cuyo los recursos que quieres enumerar.

    Cómo encontrar un ID de carpeta de Google Cloud

    Console

    Para encontrar un ID de carpeta de Google Cloud, completa los siguientes pasos:

    1. Ve a la consola de Google Cloud.

      Ir a la consola de Google Cloud

    2. Haz clic en el cuadro de selector en la barra de menú.
    3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
    4. Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.

    gcloud CLI

    Puedes recuperar un ID de 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 puede ser una coincidencia de cadena completa o parcial. Quita el --format para ver más información sobre las carpetas encontradas.

    Para obtener el ID de una carpeta dentro de otra, enumera las subcarpetas:

    gcloud resource-manager folders list --folder=FOLDER_ID

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser la hora actual o una hora que no sea superior a 35 días. Cuando no se toma una instantánea en ese momento. Para obtener información sobre los formatos de hora, consulta gcloud topic datetimes.

Quita la marca --relationship-types para ver todas las relaciones de una carpeta.

Organizaciones

gcloud asset list \
    --organization=ORGANIZATION_ID \
    --content-type=relationship \
    --relationship-types=INSTANCE_TO_INSTANCEGROUP \
    --snapshot-time="SNAPSHOT_TIME"

Ingresa los siguientes valores:

  • ORGANIZATION_ID: Es el ID de la organización cuyos recursos deseas enumerar.

    Cómo encontrar un ID de organización de Google Cloud

    Console

    Para encontrar un ID de organización de Google Cloud, completa los siguientes pasos:

    1. Ve a la consola de Google Cloud.

      Ir a la consola de Google Cloud

    2. Haz clic en el cuadro de selector en la barra de menú.
    3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
    4. Haz clic en la pestaña Todos. El ID de la organización se muestra junto al nombre de la organización.

    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))"

  • SNAPSHOT_TIME: Opcional La hora a la que si quieres tomar una instantánea de tus recursos. El valor debe ser el hora actual o de no más de 35 días en el pasado. Si no se proporciona, se toma una instantánea a la hora actual. Para obtener información sobre consulta gcloud topic datetimes.

Quita la marca --relationship-types para ver todas las relaciones de una organización.

REST

curl -X POST \
     -H "X-HTTP-Method-Override: GET" \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -H "Content-Type: application/json" \
     -d '{
          "contentType": "RELATIONSHIP",
          "relationshipTypes": "INSTANCE_TO_INSTANCEGROUP",
          "readTime": "SNAPSHOT_TIME",
          "pageToken": "PAGE_TOKEN"
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE/assets

Ingresa los siguientes valores:

  • SNAPSHOT_TIME: Opcional La hora en la que quieres tomar una instantánea de tus activos, en formato RFC 3339. El valor debe ser la hora actual o una hora no superior a 35 días en la en el pasado. Si no se proporciona, se toma una instantánea en el momento actual.

  • PAGE_TOKEN: Opcional Las respuestas a solicitudes largas son separadas en varias páginas. Este par clave-valor no es necesario para la primera página, sin embargo, se puede llamar a las páginas siguientes usando el parámetro esta es nextPageToken.

  • SCOPE: Un permiso puede ser un proyecto, una carpeta o un organización.

    Los valores permitidos son los siguientes:

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Cómo encontrar un número de proyecto de Google Cloud

      Console

      Para encontrar un número de proyecto de Google Cloud, completa los siguientes pasos:

      1. Ve a la página Panel en la consola de Google Cloud.

        Ir al panel

      2. Haz clic en el cuadro de selector en la barra de menú.
      3. Selecciona tu organización en el cuadro Seleccionar una opción y, luego, busca tu el nombre del proyecto.
      4. Haz clic en el nombre del proyecto para cambiar a ese proyecto. El número de proyecto se muestra Tarjeta Información del 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

      Cómo encontrar un ID de carpeta de Google Cloud

      Console

      Para encontrar un ID de carpeta de Google Cloud, completa los siguientes pasos:

      1. Ve a la consola de Google Cloud.

        Ir a la consola de Google Cloud

      2. Haz clic en el cuadro de selector en la barra de menú.
      3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
      4. Busca el nombre de tu carpeta. El ID de la carpeta se muestra junto al nombre de la carpeta.

      gcloud CLI

      Puedes recuperar un ID de 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 puede ser una coincidencia de cadena completa o parcial. Quita el --format para ver más información sobre las carpetas encontradas.

      Para obtener el ID de una carpeta dentro de otra carpeta, enumera las subcarpetas:

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Cómo encontrar un ID de organización de Google Cloud

      Console

      Para encontrar un ID de organización de Google Cloud, completa los siguientes pasos:

      1. Ve a la consola de Google Cloud.

        Ve a la consola de Google Cloud

      2. Haz clic en el cuadro de selector en la barra de menú.
      3. Haz clic en el cuadro Seleccionar una opción y, luego, selecciona tu organización.
      4. Haz clic en la pestaña Todos. El ID de la organización se muestra junto al nombre de la organización.

      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))"

Quita el par clave-valor relationshipTypes para enumerar todas las relaciones en un proyecto.