Cloud Storage へのエクスポート

このトピックでは、プロジェクトのアセット メタデータを Cloud Storage バケットにエクスポートする方法を説明します。

始める前に

始める前に、次の手順を行います。

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

    Cloud Asset Inventory API を有効にする

  2. gcloud CLI または API を使用して Cloud Asset Inventory API を呼び出すために必要な権限を構成します。

  3. 環境を設定するには、次の手順を実行します。

    gcloud CLI

    gcloud CLI を使用して Cloud Asset Inventory API を呼び出すように環境を設定するには、ローカル クライアントに Google Cloud CLI をインストールします。

    REST

    curl コマンドで Cloud Asset Inventory API を呼び出すように環境を設定するには、次の手順を行います。

    1. curl コマンドにアクセスできるかを確認します。

    2. プロジェクト、フォルダ、組織で、次のいずれかのロールがアカウントに付与されていることを確認します。

      • Cloud Asset 閲覧者のロール(roles/cloudasset.viewer

      • オーナーの基本ロール(roles/owner

  4. あるプロジェクトから別のプロジェクトにメタデータをエクスポートする場合は、エクスポート元のプロジェクトのデフォルトの Cloud Asset Inventory サービス アカウントが存在し、適切な権限があることを確認してください。

  5. エクスポートされたスナップショットを保存する Cloud Storage バケットを作成します。

制限事項

アセット スナップショットをエクスポートするときは、次の点に注意してください。

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

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

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

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

アセット スナップショットを Cloud Storage にエクスポートする

メタデータを含まないすべてのリソース名をエクスポートする

プロジェクト、フォルダまたは組織内のメタデータを含まないすべてのリソース名をエクスポートするには、次のリクエストのいずれかを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

すべてのリソース メタデータをエクスポートする

プロジェクト、フォルダ、組織内のすべてのリソース メタデータをエクスポートするには、次のリクエストを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "RESOURCE",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

特定のアセットタイプのリソースのメタデータをエクスポートする

アセットタイプが compute.googleapis.com で始まるプロジェクト、フォルダ、組織内のすべてのリソースのメタデータをエクスポートするには、次のリクエストのいずれかを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --asset-types=compute.googleapis.com.* \
    --content-type=resource \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "RESOURCE",
          "assetTypes": "compute.googleapis.com.*",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

IAM ポリシーをエクスポートする

プロジェクト、フォルダまたは組織内の IAM ポリシーをエクスポートするには、次のいずれかのリクエストを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=iam-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "IAM_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

組織のポリシーをエクスポートする

プロジェクト、フォルダまたは組織に設定されている組織のポリシーをエクスポートするには、次のいずれかのリクエストを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=org-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "ORG_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

OSConfig インスタンスのインベントリをエクスポートする

VM インスタンスの OSConfig インスタンスのインベントリをエクスポートするには、次のコマンドを実行します。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=os-inventory \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "OS_INVENTORY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

組織内のアクセス ポリシーをエクスポートする

エクスポートできるのは組織のアクセス ポリシーのみです。そのためには、次のリクエストを行います。

gcloud

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=access-policy \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトにすでに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "ACCESS_POLICY",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1/organizations/ORGANIZATION_ID:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

関係をエクスポートする

プロジェクト、フォルダ、組織内の関係をエクスポートするには、次のいずれかのリクエストを行います。

gcloud

プロジェクト

gcloud asset export \
    --project=PROJECT_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • PROJECT_ID: メタデータをエクスポートするプロジェクトの ID。

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

フォルダ

gcloud asset export \
    --folder=FOLDER_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • FOLDER_ID: メタデータをエクスポートするフォルダの ID。

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

    コンソール

    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 を取得するには、以下のとおりサブフォルダを一覧表示します。

    gcloud resource-manager folders list --folder=FOLDER_ID

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

組織

gcloud asset export \
    --organization=ORGANIZATION_ID \
    --billing-project=BILLING_PROJECT_ID \
    --content-type=relationship \
    --snapshot-time="SNAPSHOT_TIME" \
    --output-path="gs://BUCKET_NAME/FILENAME"

次の値を指定します。

  • ORGANIZATION_ID: メタデータをエクスポートする組織の ID。

    Google Cloud 組織 ID を確認する方法

    コンソール

    Google Cloud 組織 ID を確認するには、次の手順を行います。

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

      Google Cloud コンソールに移動

    2. メニューバーの切り替えボックスをクリックします。
    3. [選択元] ボックスをクリックして、組織を選択します。
    4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

    gcloud CLI

    Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

  • BILLING_PROJECT_ID: 省略可。Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。gcloud config set project で課金プロジェクトに切り替えている場合は不要です。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成したい時刻。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。時刻形式については、gcloud topic datetimes をご覧ください。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

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 '{
          "contentType": "RELATIONSHIP",
          "readTime": "SNAPSHOT_TIME",
          "outputConfig": {
            "gcsDestination": {
              "uri": "gs://BUCKET_NAME/FILENAME"
            }
          }
         }' \
     https://cloudasset.googleapis.com/v1//SCOPE:exportAssets

次の値を指定します。

  • BILLING_PROJECT_ID: Cloud Storage バケットへの書き込み権限がある、デフォルトの Cloud Asset Inventory サービス エージェントが存在するプロジェクト ID。詳細は、課金プロジェクトをお読みください

  • SNAPSHOT_TIME: 省略可。アセットのスナップショットを作成する時刻を RFC 3339 形式で表したもの。この値は、現在の時刻または過去 35 日以内の時刻である必要があります。指定しない場合、現在の時刻にスナップショットが作成されます。

  • BUCKET_NAME: 書き込み先の Cloud Storage バケットの名前。

  • FILENAME: 書き込み先の Cloud Storage バケット内のファイル。

  • SCOPE: プロジェクト、フォルダ、組織がスコープになります。

    使用できる値は次のとおりです。

    • projects/PROJECT_ID

    • projects/PROJECT_NUMBER

      Google Cloud プロジェクト番号を確認する方法

      コンソール

      Google Cloud プロジェクト番号を確認するには、次の手順を行います。

      1. Google Cloud コンソールの [ダッシュボード] ページに移動します。

        ダッシュボードに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスで組織を選択し、プロジェクト名を検索します。
      4. プロジェクト名をクリックして、そのプロジェクトに切り替えます。プロジェクト番号が [プロジェクト情報] カードに表示されます。

      gcloud CLI

      Google Cloud プロジェクト番号を取得するには、次のコマンドを使用します。

      gcloud projects describe PROJECT_ID --format="value(projectNumber)"

    • folders/FOLDER_ID

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

      コンソール

      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 を取得するには、以下のとおりサブフォルダを一覧表示します。

      gcloud resource-manager folders list --folder=FOLDER_ID

    • organizations/ORGANIZATION_ID

      Google Cloud 組織 ID を確認する方法

      コンソール

      Google Cloud 組織 ID を確認するには、次の手順を行います。

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

        Google Cloud コンソールに移動

      2. メニューバーの切り替えボックスをクリックします。
      3. [選択元] ボックスをクリックして、組織を選択します。
      4. [すべて] タブをクリックします。 組織 ID が組織名の横に表示されます。

      gcloud CLI

      Google Cloud 組織 ID を取得するには、次のコマンドを使用します。

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

エクスポートのステータスを確認する

オペレーションはオペレーション ID に関連付けられます。これは、UUID です。この値は、正常に動作するための追加の権限を gcloud asset operations describe コマンドで付与する必要がないため、機密性の高い情報になる可能性があります。オペレーション ID は信頼できるユーザーとのみ共有してください。

サーバーは、同じ宛先への前回のリクエストが開始されてからの経過時間が 15 分未満であり、まだ実行されている場合にリクエストを拒否します。エクスポート時間が 15 分を超え、最初のリクエストが正常に完了する前に同じ宛先に対し連続したリクエストが実行されると、不定の結果が生じる可能性があります。

エクスポートのステータスを確認するには、次のコマンドを実行します。

gcloud CLI

エクスポートのステータスを確認するには、次のコマンドを実行します。エクスポート コマンドを実行すると、レスポンスに OPERATION_PATH が表示されます。

gcloud asset operations describe OPERATION_PATH

REST

エクスポートのステータスを表示するには、エクスポートに対するレスポンスで返されたオペレーション ID を使用して次のコマンドを実行します。

  1. OPERATION_PATH は、エクスポートに対するレスポンスの name フィールドにあります。形式は次のとおりです。

    "name": "projects/PROJECT_NUMBER/operations/ExportAssets/CONTENT_TYPE/OPERATION_ID"
    
  2. エクスポートのステータスを確認するには、OPERATION_PATH を指定して次のコマンドを実行します。

    curl -X GET \
         -H "Authorization: Bearer $(gcloud auth print-access-token)" \
         -H "Content-Type: application/json" \
         https://cloudasset.googleapis.com/v1/OPERATION_PATH
    

アセット スナップショットを表示する

アセットのスナップショットを表示するには:

  1. Google Cloud コンソールで Cloud Storage の [バケット] ページに移動します。

    [バケット] に移動

  2. エクスポートを保存したバケットを選択してから、ファイル名を選択します。

エクスポートは、アセットとそのリソース名の一覧を表示します。