Este documento mostra como exportar os metadados dos recursos da sua organização, pasta ou projeto para um contentor do Cloud Storage.
Antes de começar
Ative a API Cloud Asset Inventory no projeto a partir do qual está a executar comandos do Cloud Asset Inventory.
Certifique-se de que a sua conta tem a função correta para chamar a API Cloud Asset Inventory. Para ver as autorizações individuais de cada tipo de chamada, consulte a secção Autorizações.
Crie um contentor do Cloud Storage para exportar, se ainda não tiver um.
Limitações
Os contentores do Cloud Storage encriptados com chaves personalizadas do Cloud Key Management Service (Cloud KMS) não são suportados.
O contentor do Cloud Storage não pode ter uma política de retenção definida.
Durante a exportação, a operação pode criar ficheiros temporários na pasta de saída. Não remova estes ficheiros temporários enquanto a operação estiver em curso. Após a conclusão da operação, os ficheiros temporários são removidos automaticamente.
O tipo de conteúdo
ACCESS_POLICYsó pode ser exportado ao nível da organização.Se o ficheiro para o qual está a exportar já existir e estiver em processo de exportação, é devolvido um erro
400.Para testar as autorizações, o Cloud Asset Inventory cria um ficheiro vazio antes de exportar os dados, o que envia um evento de acionador do Cloud Storage adicional de
google.cloud.storage.object.v1.finalized.
Exporte um resumo de recursos para o Cloud Storage
gcloud
gcloud asset export \ --SCOPE \ --billing-project=BILLING_PROJECT_ID \ --asset-types=ASSET_TYPE_1,ASSET_TYPE_2,... \ --content-type=CONTENT_TYPE \ --relationship-types=RELATIONSHIP_TYPE_1,RELATIONSHIP_TYPE_2,... \ --snapshot-time="SNAPSHOT_TIME" \ --OUTPUT_TYPE
Indique os seguintes valores:
-
SCOPE: use um dos seguintes valores:-
project=PROJECT_ID, ondePROJECT_IDé o ID do projeto que tem os metadados dos recursos que quer exportar. -
folder=FOLDER_ID, ondeFOLDER_IDé o ID da pasta que tem os metadados dos recursos que quer exportar.Como encontrar o ID de uma Google Cloud pasta
Google Cloud consola
Para encontrar o ID de uma Google Cloud pasta, conclua os seguintes passos:
-
Aceda à Google Cloud consola.
- Clique na caixa de lista do comutador na barra de menu.
- Selecione a sua organização na caixa de lista.
- Pesquise o nome da pasta. O ID da pasta é apresentado junto ao nome da pasta.
CLI gcloud
Pode obter o ID de uma Google Cloud pasta localizada ao nível da organização com 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)"
Onde TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag
--formatpara ver mais informações sobre as pastas encontradas.O comando anterior não devolve os IDs das subpastas dentro das pastas. Para tal, execute o seguinte comando com o ID de uma pasta de nível superior:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organization=ORGANIZATION_ID, ondeORGANIZATION_IDé o ID da organização que tem os metadados dos recursos que quer exportar.Como encontrar o ID de uma Google Cloud organização
Google Cloud consola
Para encontrar o ID de uma Google Cloud organização, conclua os seguintes passos:
-
Aceda à Google Cloud consola.
- Clique na caixa de lista do comutador na barra de menu.
- Selecione a sua organização na caixa de lista.
- Clique no separador Tudo. O ID da organização é apresentado junto ao nome da organização.
CLI gcloud
Pode obter o ID de uma Google Cloud organização com o seguinte comando:
gcloud organizations describe ORGANIZATION_NAME --format="value(name.segment(1))"
-
-
-
BILLING_PROJECT_ID: opcional. O ID do projeto no qual o agente de serviço do Cloud Asset Inventory predefinido tem autorizações para gerir os seus conjuntos de dados e tabelas do BigQuery. Leia mais sobre como definir o projeto de faturação. ASSET_TYPE_#: opcional. Uma lista separada por vírgulas de tipos de recursos pesquisáveis. As expressões regulares compatíveis com RE2 são suportadas. Se a expressão regular não corresponder a nenhum tipo de recurso suportado, é devolvido um erroINVALID_ARGUMENT. Quando--asset-typesnão é especificado, são devolvidos todos os tipos de recursos.CONTENT_TYPE: opcional. O tipo de conteúdo dos metadados que quer obter. Quando--content-typenão é especificado, apenas são devolvidas informações básicas, como os nomes dos recursos, a última vez que os recursos foram atualizados e a que projetos, pastas e organizações pertencem.-
RELATIONSHIP_TYPE_#: opcional. Requer acesso ao nível Security Command Center Premium ou Enterprise, ou ao Gemini Cloud Assist. Uma lista separada por vírgulas de tipos de relações de recursos que quer obter. Tem de definirCONTENT_TYPEcomoRELATIONSHIPpara que isto funcione. -
SNAPSHOT_TIME: opcional. A hora em que quer tirar uma captura instantânea dos seus recursos, no formato de data/hora do tópico gcloud. O valor não pode ser superior a 35 dias no passado. Quando--snapshot-timenão é especificado, é tirado um instantâneo na hora atual. -
OUTPUT_TYPE: use um dos seguintes valores:--output-path="gs://BUCKET_NAME/FILE_NAME"para escrever a saída num ficheiro, onde:-
BUCKET_NAMEé o nome do contentor do Cloud Storage para o qual escrever. -
FILE_NAMEé o ficheiro no qual escrever no seu contentor do Cloud Storage.
-
-
--output-path-prefix="gs://BUCKET_NAME/FOLDER_NAME"para escrever a saída numa pasta, onde:-
BUCKET_NAMEé o nome do contentor do Cloud Storage para o qual escrever. -
FOLDER_NAMEé a pasta na qual escrever no seu contentor do Cloud Storage. A saída é dividida em subpastas com o nome dos tipos de recursos. As subpastas não podem já existir na pasta que especificar.
-
Consulte a referência da CLI gcloud para ver todas as opções.
Exemplo
Execute o seguinte comando para exportar os metadados do serviço resource tal como estavam a 30 de janeiro de 2024 no projeto my-project para o ficheiro my-file.txt no contentor do Cloud Storage my-bucket.
gcloud asset export \ --project=my-project \ --billing-project=my-project \ --content-type=resource \ --snapshot-time="2024-01-30" \ --output-path="gs://my-bucket/my-file.txt"
Exemplo de resposta
Export in progress for root asset [projects/my-project]. Use [gcloud asset operations describe projects/000000000000/operations/ExportAssets/RESOURCE/00000000000000000000000000000000] to check the status of the operation.
REST
Método HTTP e URL:
POST https://cloudasset.googleapis.com/v1/SCOPE_PATH:exportAssets
Cabeçalhos:
X-Goog-User-Project: BILLING_PROJECT_ID
Corpo JSON do pedido:
{ "assetTypes": [ "ASSET_TYPE_1", "ASSET_TYPE_2", "..." ], "contentType": "CONTENT_TYPE", "relationshipTypes": [ "RELATIONSHIP_TYPE_1", "RELATIONSHIP_TYPE_2", "..." ], "readTime": "SNAPSHOT_TIME", "outputConfig": { "gcsDestination": { OUTPUT_TYPE } } }
Indique os seguintes valores:
-
SCOPE_PATH: use um dos seguintes valores:Os valores permitidos são:
-
projects/PROJECT_ID, ondePROJECT_IDé o ID do projeto que tem os metadados dos recursos que quer exportar. -
projects/PROJECT_NUMBER, ondePROJECT_NUMBERé o número do projeto que tem os metadados dos recursos que quer exportar.Como encontrar um Google Cloud número do projeto
Google Cloud consola
Para encontrar um Google Cloud número do projeto, conclua os seguintes passos:
-
Aceda à página Boas-vindas na Google Cloud consola.
- Clique na caixa de lista do comutador na barra de menu.
-
Selecione a sua organização na caixa de lista e, em seguida, pesquise o nome do projeto. O nome do projeto, o número do projeto e o ID do projeto são apresentados junto ao título Bem-vindo.
São apresentados até 4000 recursos. Se não vir o projeto que procura, aceda à página Gerir recursos e filtre a lista através do nome desse projeto.
CLI gcloud
Pode obter um Google Cloud número do projeto com o seguinte comando:
gcloud projects describe PROJECT_ID --format="value(projectNumber)"
-
-
folders/FOLDER_ID, ondeFOLDER_IDé o ID da pasta que tem os metadados dos recursos que quer exportar.Como encontrar o ID de uma Google Cloud pasta
Google Cloud consola
Para encontrar o ID de uma Google Cloud pasta, conclua os seguintes passos:
-
Aceda à Google Cloud consola.
- Clique na caixa de lista do comutador na barra de menu.
- Selecione a sua organização na caixa de lista.
- Pesquise o nome da pasta. O ID da pasta é apresentado junto ao nome da pasta.
CLI gcloud
Pode obter o ID de uma Google Cloud pasta localizada ao nível da organização com 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)"
Onde TOP_LEVEL_FOLDER_NAME é uma correspondência de string parcial ou completa para o nome da pasta. Remova a flag
--formatpara ver mais informações sobre as pastas encontradas.O comando anterior não devolve os IDs das subpastas dentro das pastas. Para tal, execute o seguinte comando com o ID de uma pasta de nível superior:
gcloud resource-manager folders list --folder=FOLDER_ID
-
-
organizations/ORGANIZATION_ID, ondeORGANIZATION_IDé o ID da organização que tem os metadados dos recursos que quer exportar.Como encontrar o ID de uma Google Cloud organização
-