Esta página explica como criar e gerenciar feeds em um projeto.
Visão geral
Para receber notificações em tempo real sobre mudanças em recursos e políticas, criar e se inscrever em um feed; Ao configurar o feed, você pode especificar que deseja monitorar alterações de tipos de recursos compatíveis, políticas do IAM, políticas de acesso e políticas da organização organização, pasta e projeto. Além disso, é possível adicionar condições ao seu feed para receber notificações apenas de alguns tipos de alteração em um recurso. Depois de configurar seu feed, você receberá notificações imediatamente sempre que o os recursos especificados são alterados e enviados pelo Pub/Sub (formatado como um TemporalAsset). As notificações em tempo real se conectam às suas cargas de trabalho atuais. Com este é possível mesclar ações, como criar uma função do Cloud Run reverter uma alteração de recurso depois que ela for detectada.
Antes de começar
Antes de começar, conclua as etapas a seguir.
Ative a API Cloud Asset Inventory no projeto em que você executará os comandos da API.
Configure as permissões necessárias para chame a API Cloud Asset Inventory usando a CLI gcloud ou a API.
Conclua as etapas a seguir para configurar seu ambiente.
CLI da gcloud
Configure seu ambiente para usar a CLI gcloud e chamar o a API Cloud Asset Inventory, instale a Google Cloud CLI no seu cliente local.
REST
Para configurar o ambiente para chamar a API Cloud Asset Inventory com o
curl
, conclua as etapas a seguir.Verifique se você tem acesso ao comando
curl
.Não se esqueça de conceder à sua conta um dos seguintes papéis em seu projeto, pasta ou organização.
Papel Leitor de recursos do Cloud (
roles/cloudasset.viewer
)Papel básico do proprietário (
roles/owner
)
Conceda permissões à conta de serviço ou usuário para chamar a API em tempo real feeds. As seguintes permissões são necessárias para cada operação:
Permissão Descrição cloudasset.feeds.create
cloudasset.assets.exportResource
Criar feeds cloudasset.feeds.update
cloudasset.assets.exportResource
Atualizar feeds cloudasset.feeds.delete
Excluir feeds cloudasset.feeds.get
Acessar feeds cloudasset.feeds.list
Listar feeds O papel Proprietário de recursos do Cloud (
roles/cloudasset.owner
) concede todas as permissões relacionadas à API Cloud Asset, incluindo as permissões listadas na tabela anterior. Para mais informações sobre papéis e permissões, consulte Noções básicas sobre papéis e Como configurar permissões.Se você estiver exportando metadados de um projeto para outro, verifique se o exportando os dados a conta de serviço padrão do Inventário de recursos do Cloud existe e tem as permissões corretas.
Crie um tópico do Pub/Sub se você não tiver um tópico do Pub/Sub atual.
Limitações
Pode levar até 10 minutos para que a criação, a atualização ou a exclusão de um feed entre em vigor.
O projeto do consumidor em que o feed é criado precisa sobreviver ao feed porque a conta de serviço usada para publicar no tópico Pub/Sub de destino está localizada no projeto do consumidor. Se o projeto do consumidor for excluído, o Inventário de recursos do Cloud não vai poder publicar no destino. O feed não funciona mais e é excluída assim que a exclusão do projeto é permanente.
Como criar feeds
Você pode criar até 200 feeds em um pai. Esse limite se aplica somente a feeds logo depois daquele pai e não conta os feeds dos filhos dele. Por exemplo, se você tiver 10 projetos em uma organização, cada projeto pode ter até 200 feeds, e a organização também pode ter até 200 feeds.
Para criar um feed para projetos, pastas ou organizações, defina um dos
solicitações a seguir. O Inventário de recursos do Cloud define uma notificação para qualquer
corresponde a pelo menos um dos parâmetros ASSET
do seu feed
AND também corresponde à expressão de condição, se especificada.
gcloud
Projetos
gcloud asset feeds create FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic=projects/PROJECT_ID/topics/TOPIC_ID \
--asset-names=ASSET_NAME_1,ASSET_NAME_2,... \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--content-type=CONTENT_TYPE \
--condition-title="CONDITION_TITLE" \
--condition-description="CONDITION_DESCRIPTION" \
--condition-expression="CONDITION_EXPRESSION"
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.PROJECT_ID
: o ID do projeto cujo metadados estão sendo enviados ao feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos de que você quer receber notificações de alteração.É necessário incluir pelo menos um
ASSET_NAME
ouASSET_TYPE
.ASSET_TYPE
: opcional. Uma lista separada por vírgulas de tipos de recursos para o qual você deseja receber notificações de alterações. Expressões regulares compatíveis com RE2 são compatíveis. Se a expressão regular não corresponder a nenhuma tipo de recurso, um erroINVALID_ARGUMENT
será retornado.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.CONTENT_TYPE
: opcional. O recurso tipo de conteúdo para o qual você deseja receber notificações de alterações.CONDITION_TITLE
: opcional. O título da condição a ser aplicada ao feed.CONDITION_DESCRIPTION
: opcional. O descrição do condition para aplicar ao feed.CONDITION_EXPRESSION
: opcional. O condition [estado] expressão a ser aplicada ao feed.
Pastas
gcloud asset feeds create FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic=projects/PROJECT_ID/topics/TOPIC_ID \
--asset-names=ASSET_NAME_1,ASSET_NAME_2,... \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--content-type=CONTENT_TYPE \
--condition-title="CONDITION_TITLE" \
--condition-description="CONDITION_DESCRIPTION" \
--condition-expression="CONDITION_EXPRESSION"
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.FOLDER_ID
: o ID da pasta cuja metadados estão sendo enviados ao feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.PROJECT_ID
: o ID do projeto em que o tópico do Pub/Sub está localizado.TOPIC_ID
: o ID do tópico do Pub/Sub para publicar notificações.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos para o qual você deseja receber notificações de alterações.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.ASSET_TYPE
: opcional. Uma lista separada por vírgulas de tipos de recursos para os quais você quer receber notificações de mudança. As expressões regulares são suporte. Se a expressão regular não corresponder a nenhuma tipo de recurso, um erroINVALID_ARGUMENT
será retornado.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.CONTENT_TYPE
: opcional. O recurso tipo de conteúdo para o qual você deseja receber notificações de alterações.CONDITION_TITLE
: opcional. O título do condition [estado] para aplicar ao feed.CONDITION_DESCRIPTION
: opcional. O descrição do condition para aplicar ao feed.CONDITION_EXPRESSION
: opcional. A expressão de condição a ser aplicada ao feed.
Organizações
gcloud asset feeds create FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic=projects/PROJECT_ID/topics/TOPIC_ID \
--asset-names=ASSET_NAME_1,ASSET_NAME_2,... \
--asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \
--content-type=CONTENT_TYPE \
--condition-title="CONDITION_TITLE" \
--condition-description="CONDITION_DESCRIPTION" \
--condition-expression="CONDITION_EXPRESSION"
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.ORGANIZATION_ID
: o ID do projeto cujo metadados estão sendo enviados ao feed.Como encontrar um ID da organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.PROJECT_ID
: o ID do projeto em que o do Pub/Sub.TOPIC_ID
: o ID do tópico do Pub/Sub para publicar notificações.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos para o qual você deseja receber notificações de alterações.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.ASSET_TYPE
: opcional. Uma lista separada por vírgulas de tipos de recursos para o qual você deseja receber notificações de alterações. As expressões regulares são suporte. Se a expressão regular não corresponder a nenhuma tipo de recurso, um erroINVALID_ARGUMENT
será retornado.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.CONTENT_TYPE
: opcional. O recurso tipo de conteúdo para o qual você deseja receber notificações de alterações.CONDITION_TITLE
: opcional. O título do condition [estado] para aplicar ao feed.CONDITION_DESCRIPTION
: opcional. O descrição do condition para aplicar ao feed.CONDITION_EXPRESSION
: opcional. A expressão de condição a ser aplicada ao feed.
REST
curl -X POST \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"feedId": "FEED_ID",
"feed": {
"assetNames": [
"ASSET_NAME_1",
"ASSET_NAME_2",
"..."
],
"assetTypes": [
"ASSET_TYPE_1",
"ASSET_TYPE_2",
"..."
],
"contentType": "CONTENT_TYPE",
"feedOutputConfig": {
"pubsubDestination": {
"topic": "projects/PROJECT_ID/topics/TOPIC_ID"
}
},
"condition": {
"title": "CONDITION_TITLE",
"description": "CONDITION_DESCRIPTION",
"expression": "CONDITION_EXPRESSION"
}
}
}' \
https://cloudasset.googleapis.com/v1/SCOPE/feeds
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.FEED_ID
: identificador exclusivo do feed de recursos.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos para os quais você deseja receber notificações de alterações.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.ASSET_TYPE
: opcional. Uma lista separada por vírgulas de tipos de recursos para no qual deseja receber notificações de alterações. Expressões regulares são suportados. Se a expressão regular não corresponder a nenhuma tipo de recurso, um erroINVALID_ARGUMENT
será retornado.Pelo menos um
ASSET_NAME
ou O campoASSET_TYPE
é obrigatório.CONTENT_TYPE
: opcional. O tipo de conteúdo do recurso. para o qual você deseja receber notificações de alterações.PROJECT_ID
: o ID do projeto em que o do Pub/Sub.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.CONDITION_TITLE
: opcional. O título do condition [estado] para aplicar ao feed.CONDITION_DESCRIPTION
: opcional. Descrição do campo condition para aplicar ao feed.CONDITION_EXPRESSION
: opcional. a condition expressão a ser aplicada ao feed.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
É possível recuperar um ID de organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Depois de criar um feed, assine as atualizações do tópico Pub/Sub
especificado no feed. Um novo feed pode levar até 10 minutos para começar a enviar
notificações. Uma notificação é enviada para cada alteração em um recurso que corresponde a
assetNames
ou assetTypes
e satisfaz condition
no feed.
A primeira mensagem publicada no tópico do Pub/Sub é de boas-vindas
no formato string, e todas as mensagens a seguir estão no
de TemporalAsset.
Confira um exemplo de mensagem para o tipo de conteúdo RESOURCE
.
{
"asset": {
"ancestors": [
"projects/[PROJECT_ID]",
"folders/[FOLDER_ID]",
"organizations/[ORGANIZATION_ID]"
],
"assetType": "[ASSET_TYPE]",
"name": "[ASSET_NAME]",
"resource": {
"data": {
...detailed resource metadata...
},
"discoveryDocumentUri": "[DISCOVERY_URI]",
"discoveryName": "[DISCOVERY_NAME]",
"location": "[LOCATION]",
"parent": "[PARENT_ASSET_NAME]",
"version": "[VERSION]"
},
"updateTime": "[UPDATE_TIME]"
},
"priorAsset": {
...prior asset information...
},
"priorAssetState": "[PRIOR_ASSET_STATE]",
"window": {
"startTime": "[UPDATE_TIME]"
}
}
Para saber mais sobre o Pub/Sub ou como configurar assinaturas, consulte a Documentação do Pub/Sub.
Criar um feed para mudanças em buckets do Cloud Storage ou tabelas do BigQuery
Os comandos a seguir criam notificações do
TOPIC_ID
tópico do Pub/Sub quando o conteúdo é alterado
no bucket BUCKET_NAME
do Cloud Storage ou em qualquer
Tabelas do BigQuery:
gcloud
Projetos
gcloud asset feeds create FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--asset-names=//storage.googleapis.com/BUCKET_NAME \
--asset-types=bigquery.googleapis.com/Table \
--content-type=resource
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.PROJECT_ID
: o ID do projeto cujo metadados estão sendo enviados ao feed.BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Inventário de recursos do Cloud está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.BUCKET_NAME
: o Cloud Storage o nome do bucket a ser monitorado.
Pastas
gcloud asset feeds create FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--asset-names=//storage.googleapis.com/BUCKET_NAME \
--asset-types=bigquery.googleapis.com/Table \
--content-type=resource
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.FOLDER_ID
: o ID da pasta cuja metadados estão sendo enviados ao feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.BUCKET_NAME
: o Cloud Storage o nome do bucket a ser monitorado.
Organizações
gcloud asset feeds create FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--asset-names=//storage.googleapis.com/BUCKET_NAME \
--asset-types=bigquery.googleapis.com/Table \
--content-type=resource
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.ORGANIZATION_ID
: o ID da organização cujos metadados estão sendo enviados ao feed.Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.BUCKET_NAME
: o Cloud Storage o nome do bucket a ser monitorado.
REST
curl -X POST \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"feedId": "FEED_ID",
"feed": {
"assetNames": ["storage.googleapis.com/BUCKET_NAME"],
"assetTypes": ["bigquery.googleapis.com/Table"],
"contentType": "RESOURCE",
"feedOutputConfig": {
"pubsubDestination": {
"topic": "projects/PROJECT_ID/topics/TOPIC_ID"
}
}
}
}' \
https://cloudasset.googleapis.com/v1/SCOPE/feeds
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Inventário de recursos do Cloud está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.FEED_ID
: um identificador exclusivo do feed de recursos.BUCKET_NAME
: o Cloud Storage o nome do bucket a ser monitorado.PROJECT_ID
: o ID do projeto com os metadados que estão sendo enviados para o feed.TOPIC_ID
: o ID do tópico do Pub/Sub para publicar notificações.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
As notificações são enviadas apenas quando os metadados do recurso ou da política do recurso muda a si mesmo. No exemplo anterior, alterar qualquer recurso em buckets do Cloud Storage ou tabelas do BigQuery não acionam uma notificação.
Como criar um feed para mudanças no tipo de recurso
As solicitações a seguir criam notificações do
TOPIC_ID
tópico do Pub/Sub quando o conteúdo é alterado
nos recursos com tipo de ativo que começa com compute.googleapis.com
.
gcloud
Projetos
gcloud asset feeds create FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--content-type=resource \
--asset-types=compute.googleapis.com.*
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.PROJECT_ID
: o ID do projeto cujo metadados estão sendo enviados ao feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.
Pastas
gcloud asset feeds create FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--content-type=resource \
--asset-types=compute.googleapis.com.*
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.FOLDER_ID
: o ID da pasta cuja metadados estão sendo enviados ao feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.
Organizações
gcloud asset feeds create FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--content-type=resource \
--asset-types=compute.googleapis.com.*
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.ORGANIZATION_ID
: o ID da organização cujos metadados estão sendo enviados ao feed.Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico Pub/Sub para publicar notificações.
REST
curl -X POST \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"feedId": "FEED_ID",
"feed": {
"assetTypes": ["compute.googleapis.com.*"],
"contentType": "RESOURCE",
"feedOutputConfig": {
"pubsubDestination": {
"topic": "projects/PROJECT_ID/topics/TOPIC_ID"
}
}
}
}' \
https://cloudasset.googleapis.com/v1/SCOPE/feeds
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.FEED_ID
: um identificador exclusivo do feed de recursos.PROJECT_ID
: o ID do projeto cujo metadados estão sendo enviados ao feed.TOPIC_ID
: o ID do tópico do Pub/Sub para publicar notificações.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Receber feeds
Para receber um feed específico, faça uma das seguintes solicitações.
gcloud
Projetos
gcloud asset feeds describe FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
FEED_ID
: um identificador exclusivo do feed de recursos.PROJECT_ID
: o ID do projeto cujo metadados são publicados no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
Pastas
gcloud asset feeds describe FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.FOLDER_ID
: o ID da pasta cuja metadados são publicados no feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.
Organizações
gcloud asset feeds describe FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
FEED_ID
: identificador exclusivo do feed de recursos.ORGANIZATION_ID
: o ID da organização cujos metadados são publicados no feed.Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
REST
curl -X GET \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://cloudasset.googleapis.com/v1/SCOPE/feeds/FEED_ID
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Cloud Asset Inventory está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.SCOPE
: um escopo pode ser um projeto, uma pasta ou uma organização. Não é possível usar IDs de projetos.Os valores permitidos são:
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
FEED_ID
: identificador exclusivo do feed de recursos.
O feed é retornado no seguinte formato, em que
FULL_NAME_FEED_ID
é o identificador do feed, junto com seu
pai do recurso:
{
"name": "FULL_NAME_FEED_ID",
"assetTypes": ["ASSET_TYPES"],
"assetNames": ["ASSET_NAMES"],
"contentType": "CONTENT_TYPES",
"feedOutputConfig": {
"pubsubDestination": {
"topic": "projects/PROJECT_ID/topics/TOPIC_ID"
}
},
"condition": {
"title": "CONDITION_TITLE",
"description": "CONDITION_DESCRIPTION",
"expression": "CONDITION_EXPRESSION"
}
}
Feeds da página de detalhes
Para listar todos os feeds de um projeto, pasta ou organização, crie um dos solicitações a seguir.
gcloud
Projetos
gcloud asset feeds list \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
PROJECT_ID
: o ID do projeto cujo metadados são publicados no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
Pastas
gcloud asset feeds list \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
FOLDER_ID
: o ID da pasta cujos metadados são publicados no feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa Alternador na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
Organizações
gcloud asset feeds list \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
ORGANIZATION_ID
: o ID da organização cujos metadados são publicados no feed.Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
REST
curl -X GET \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://cloudasset.googleapis.com/v1/SCOPE/feeds
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Cloud Asset Inventory está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização.Os valores permitidos são:
projects/PROJECT_ID
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Atualizando feeds
Para atualizar os atributos de um feed, você precisa especificar o caminho do atributo no
update_mask
e o valor desse atributo. A solicitação a seguir
atualiza os valores assetNames
e topic
de um feed em um projeto.
gcloud
Projetos
gcloud asset feeds update FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--add-asset-names=ASSET_NAME_1,ASSET_NAME_2,...
Forneça os valores a seguir:
PROJECT_ID
: o ID do projeto cujo metadados são publicados no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.TOPIC_ID
: o ID do tópico do Pub/Sub em que as notificações são publicadas.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos para no qual deseja receber notificações de alterações.
Pastas
gcloud asset feeds update FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--add-asset-names=ASSET_NAME_1,ASSET_NAME_2,...
Forneça os valores a seguir:
FOLDER_ID
: o ID da pasta cujos metadados são publicados no feed.Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para conferir o ID de uma pasta em outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Inventário de recursos do Cloud está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.PROJECT_ID
: o ID do projeto em que o do Pub/Sub.TOPIC_ID
: o ID do tópico Pub/Sub onde as notificações são publicadas.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos para no qual deseja receber notificações de alterações.
Organizações
gcloud asset feeds update FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID \
--pubsub-topic="projects/PROJECT_ID/topics/TOPIC_ID" \
--add-asset-names=ASSET_NAME_1,ASSET_NAME_2,...
Forneça os valores a seguir:
ORGANIZATION_ID
: o ID da organização cujos metadados são publicados no feed.Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.PROJECT_ID
: o ID do projeto em que o do Pub/Sub.TOPIC_ID
: o ID do tópico Pub/Sub onde as notificações são publicadas.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos de que você quer receber notificações de alteração.
REST
curl -X PATCH \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"feed": {
"assetNames": [
"ASSET_NAME_1",
"ASSET_NAME_2",
"..."
],
"feedOutputConfig": {
"pubsubDestination": {
"topic": "projects/PROJECT_ID/topics/TOPIC_ID"
}
}
},
"update_mask": {
"paths": ["asset_names", "feed_output_config.pubsub_destination.topic"]
}
}' \
https://cloudasset.googleapis.com/v1/SCOPE/feeds/FEED_ID
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Cloud Asset Inventory está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.ASSET_NAME
: opcional. Uma lista separada por vírgulas de nomes completos de recursos de que você quer receber notificações de alteração.PROJECT_ID
: o ID do projeto em que o do Pub/Sub.TOPIC_ID
: o ID do tópico Pub/Sub onde as notificações são publicadas.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização. IDs de projeto não são compatíveis.Os valores permitidos são:
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
Recupere um ID da organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Como excluir feeds
Se você não quiser mais receber notificações sobre alterações de recurso, use o seguinte comando para excluir um feed em um projeto.
gcloud
Projetos
gcloud asset feeds delete FEED_ID \
--project=PROJECT_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
PROJECT_ID
: o ID do projeto cujo metadados são publicados no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.
Pastas
gcloud asset feeds delete FEED_ID \
--folder=FOLDER_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
FOLDER_ID
: o ID da pasta cuja metadados são publicados no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.
Organizações
gcloud asset feeds delete FEED_ID \
--organization=ORGANIZATION_ID \
--billing-project=BILLING_PROJECT_ID
Forneça os valores a seguir:
ORGANIZATION_ID
: o ID da organização cujas informações são publicadas no feed.BILLING_PROJECT_ID
: opcional. O ID do projeto que o agente de serviço padrão do Inventário de recursos do Cloud está com permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre os projetos de faturamento.
REST
curl -X DELETE \
-H "X-Goog-User-Project: BILLING_PROJECT_ID" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://cloudasset.googleapis.com/v1/SCOPE/feeds/FEED_ID
Forneça os valores a seguir:
BILLING_PROJECT_ID
: opcional. O ID do projeto em que o agente de serviço padrão do Inventário de recursos do Cloud está e que tem permissões para gerenciar seu tópico do Pub/Sub. Leia mais sobre projetos de faturamento.SCOPE
: um escopo pode ser um projeto, uma pasta ou organização. Não é possível usar IDs de projetos.Os valores permitidos são:
projects/PROJECT_NUMBER
Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa Alternador na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
folders/FOLDER_ID
Como encontrar um ID de pasta do Google Cloud
Console
Para encontrar um ID de pasta do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Pesquise o nome da sua pasta. O ID da pasta é mostrado ao lado do nome dela.
CLI da gcloud
Para recuperar um ID de pasta do Google Cloud localizado no nível da organização, use o seguinte 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)"
Em que TOP_LEVEL_FOLDER_NAME pode ser uma correspondência de string completa ou parcial. Remova o A opção
--format
para mais informações sobre as pastas encontradas.Para receber o ID de uma pasta dentro de outra, liste as subpastas:
gcloud resource-manager folders list --folder=FOLDER_ID
-
organizations/ORGANIZATION_ID
Como encontrar um ID de organização do Google Cloud
Console
Para encontrar um ID de organização do Google Cloud, siga estas etapas:
-
Acesse o console do Google Cloud.
- Clique na caixa do seletor na barra de menus.
- Clique na caixa Selecionar de e escolha a organização.
- Selecione a guia Todos. O ID da organização aparece ao lado do nome dela.
CLI da gcloud
É possível recuperar um ID de organização do Google Cloud com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
Solução de problemas
Nesta seção, mostramos como solucionar problemas comuns.
Falha ao criar ou atualizar feeds
Se a criação ou a atualização de um feed falhar, isso poderá ser causado por um problema com as permissões. Cada solicitação de criação ou atualização de feed inclui três partes: o projeto do consumidor usado para chamar a API, o pai de destino a ser monitorado e o tópico do Pub/Sub de destino para receber a notificação.
Para criar ou atualizar um feed, as seguintes permissões são necessárias:
O autor da chamada ou a conta de serviço precisa ter permissões de recursos no pai de destino (que pode ser um projeto, uma pasta ou uma organização).
A conta de serviço do recurso (
service-PROJECT_NUMBER@gcp-sa-cloudasset.iam.gserviceaccount.com
) no projeto de consumidor com a API Cloud Asset ativada precisa terpubsub.topics.publish
no tópico de destino do Pub/Sub.
Uma mensagem de erro que contém does not have permission
pode indicar que
o usuário ou a conta de serviço não tem as permissões do recurso. Saiba mais sobre as permissões necessárias.
Uma mensagem de erro que contém
Fail to use TOPIC_ID as feed output destination
conseguiu
indicam que há um problema ao publicar a mensagem no tópico
especificado no destino de saída do feed. Para resolver o problema:
Se você estiver usando a Google Cloud CLI, verifique se está utilizando o projeto correto:
gcloud config list project
Verifique se você especificou o nome correto do tópico.
Verifique se a conta de serviço (
service-PROJECT_NUMBER@gcp-sa-cloudasset.iam.gserviceaccount.com
) tem a permissãopubsub.topics.publish
no tópico, em quePROJECT_NUMBER
é o número do projeto habilitado para o Inventário de recursos do Cloud que você planeja criar o feed.Como encontrar um número de projeto do Google Cloud
Console
Para encontrar um número de projeto do Google Cloud, siga estas etapas:
-
Acesse a página Painel no console do Google Cloud.
- Clique na caixa Alternador na barra de menus.
- Escolha sua organização na caixa Selecionar de e pesquise as nome do projeto.
- Clique no nome do projeto para alternar para ele. O número do projeto é mostrado Card Informações do projeto.
CLI da gcloud
Recupere um número de projeto do Google Cloud com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
Falha ao receber atualizações de recursos ou atualizações de políticas do IAM
Se você não estiver recebendo notificações de atualizações de recursos ou de políticas do IAM, verifique os seguintes detalhes de configuração:
Verifique se os metadados foram alterados nos seus recursos. O feed em tempo real só envia atualizações quando os metadados dos tipos de recursos compatíveis são alterados. Operações como o upload de um novo arquivo para o bucket do Cloud Storage não acionam uma mudança nos metadados.
Verifique se os recursos atendem a um dos critérios especificados no feed, que são nomes e tipos de recursos.
Verifique se há erros ao publicar atualizações no tópico.
Uso do Cloud Logging
Nesta seção, descrevemos como configurar e visualizar o Logging para feeds em tempo real do Inventário de recursos do Cloud.
Quando os feeds em tempo real não enviam recursos ou atualizações de política do IAM por meio do Pub/Sub, o Inventário de recursos do Cloud registra o status de erro e a mensagem por meio do Logging. A geração de registros é ativada padrão e pertence à organização "Observability". Saiba mais sobre Preços do Google Cloud Observability.
Como visualizar registros de feeds em tempo real
Para conferir os registros, acesse o Explorador de registros.
O registro do feed em tempo real é indexado por um tópico do Pub/Sub. Para mostrar todos registros:
Clique na caixa de combinação Recurso ao lado de Pesquisar todos os campos. caixa
Pesquise
Cloud Pub/Sub Topic
e clique no tópico do Cloud Pub/Sub tipo de recurso.Clique no ID do tema que você quer consultar.
Clique em Aplicar.
A codificação UTF-8 é aplicada aos campos de registro. Os caracteres que não forem UTF-8 serão substituídos por pontos de interrogação.
Informações registradas
As entradas de registro do feed em tempo real contêm os seguintes tipos de informações:
Informações gerais exibidas na maioria dos registros do Google Cloud, como gravidade, ID do projeto, número do projeto ou carimbo de data/hora;
Campos de registro de feed em tempo real em
jsonPayload
, que contêm nome de recurso, configuração de saída do feed, status de erro ao publicar recursos ou atualizações de política do IAM.
A tabela a seguir mostra quais tipos de informações cada campo contém.
Campo | Tipo e descrição |
---|---|
name |
Nome completo do feed. O formato é um dos seguintes:
|
asset_name |
Nome completo do recurso para receber atualizações. Exemplo:
Consulte Nomes de recursos para mais informações. |
feed_output_config |
Configuração de saída do feed que define o local das atualizações do recurso foi publicado. |
condition |
A condição do feed que determina se uma atualização de recurso deve ser publicadas. |
error_status |
Status quando não é possível publicar as atualizações de recursos em um feed. |