アセット メタデータを Cloud Storage にエクスポートする

このドキュメントでは、組織、フォルダ、またはプロジェクトのアセット メタデータを Cloud Storage バケットにエクスポートする方法について説明します。

始める前に

  1. Cloud Asset Inventory コマンドを実行するプロジェクトで Cloud Asset Inventory API を有効にします。

    Cloud Asset Inventory API を有効にする

  2. アカウントに Cloud Asset Inventory API を呼び出すための適切なロールがあることを確認します。呼び出しタイプごとの個々の権限については、権限をご覧ください。

  3. まだ作成していない場合は、エクスポート先の Cloud Storage バケットを作成します。

制限事項

  • カスタム Cloud Key Management Service(Cloud KMS)鍵で暗号化された Cloud Storage バケットはサポートされていません。

  • Cloud Storage バケットに保持ポリシーを設定することはできません。

  • エクスポート中に、ペレーションによって一時ファイルが出力フォルダに作成されることがあります。これらの一時ファイルをオペレーションの進行中に削除しないでください。 オペレーションが完了すると、一時ファイルは自動的に削除されます。

  • ACCESS_POLICY コンテンツ タイプは、組織レベルでのみエクスポートできます。

  • エクスポート先のテーブルがすでに存在し、エクスポート中の場合は、400 エラーが返されます。

  • 権限をテストするために、Cloud Asset Inventory はデータをエクスポートする前に空のファイルを作成します。これにより、google.cloud.storage.object.v1.finalized の余分な Cloud Storage トリガー イベントが送信されます。

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

次の値を指定します。

  • SCOPE: 次のいずれかの値を使用できます。

    • project=PROJECT_ID。ここで、PROJECT_ID は、エクスポートするアセットのメタデータを含むプロジェクトの ID です。
    • folder=FOLDER_ID。ここで、FOLDER_ID は、エクスポートするアセットのメタデータを含むフォルダの ID です。

      Google Cloud フォルダの ID を確認する方法

      Google Cloud コンソール

      Google Cloud フォルダの ID を確認する手順は次のとおりです。

      1. Google Cloud コンソールに移動します。

        Google Cloud コンソールに移動します。

      2. メニューバーの切り替えボックスをクリックします。
      3. リストボックスから組織を選択します。
      4. フォルダ名を検索します。フォルダ ID がフォルダ名の横に表示されます。

      gcloud CLI

      組織レベルにある Google Cloud フォルダの ID を取得するには、次のコマンドを使用します。

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

      ここで、TOP_LEVEL_FOLDER_NAME はフォルダ名の部分一致または完全一致です。--format フラグを削除すると、検出されたフォルダに関する詳細情報が表示されます。

      上記のコマンドは、フォルダ内のサブフォルダの ID を返しません。これを行うには、最上位フォルダの ID を使用して次のコマンドを実行します。

      gcloud resource-manager folders list --folder=FOLDER_ID
    • organization=ORGANIZATION_ID。ここで、